swig/Examples/ruby/pointer/runme.rb
Dave Beazley 12a43edc2d The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2002-11-30 22:01:28 +00:00

45 lines
959 B
Ruby

# file: runme.rb
require 'example'
# First create some objects using the pointer library.
print "Testing the pointer library\n"
a = Example::new_intp()
b = Example::new_intp()
c = Example::new_intp()
Example::intp_assign(a,37)
Example::intp_assign(b,42)
print " a = #{a}\n"
print " b = #{b}\n"
print " c = #{c}\n"
# Call the add() function with some pointers
Example::add(a, b, c)
# Now get the result
r = Example::intp_value(c)
print " 37 + 42 = #{r}\n"
# 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\n"
r = Example::sub(37, 42)
print " 37 - 42 = #{r}\n"
# Now try the version with multiple return values
print "Testing multiple return values\n"
q, r = Example::divide(42, 37)
print " 42/37 = #{q} remainder #{r}\n"