diff options
Diffstat (limited to 'trunk/Examples/ruby/pointer/runme.rb')
| -rw-r--r-- | trunk/Examples/ruby/pointer/runme.rb | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/trunk/Examples/ruby/pointer/runme.rb b/trunk/Examples/ruby/pointer/runme.rb new file mode 100644 index 000000000..d696b026f --- /dev/null +++ b/trunk/Examples/ruby/pointer/runme.rb @@ -0,0 +1,45 @@ +# 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" + + + |
