| # file: runme.py | |
| import example | |
| # First create some objects using the pointer library. | |
| print("Testing the pointer library") | |
| a = example.new_intp() | |
| b = example.new_intp() | |
| c = example.new_intp() | |
| example.intp_assign(a, 37) | |
| example.intp_assign(b, 42) | |
| print(" a = %s" % a) | |
| print(" b = %s" % b) | |
| print(" c = %s" % c) | |
| # Call the add() function with some pointers | |
| example.add(a, b, c) | |
| # Now get the result | |
| r = example.intp_value(c) | |
| print(" 37 + 42 = %s" % r) | |
| # Clean up the pointers | |
| example.delete_intp(a) | |
| example.delete_intp(b) | |
| example.delete_intp(c) | |
| # Now try the typemap library | |
| # This should be much easier. Now how it is no longer | |
| # necessary to manufacture pointers. | |
| print("Trying the typemap library") | |
| r = example.sub(37, 42) | |
| print(" 37 - 42 = %s" % r) | |
| # Now try the version with multiple return values | |
| print("Testing multiple return values") | |
| q, r = example.divide(42, 37) | |
| print(" 42/37 = %d remainder %d" % (q, r)) |