Ruby examples added.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@853 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
aef09f73b8
commit
5df7c82b59
42 changed files with 1804 additions and 7 deletions
42
SWIG/Examples/ruby/pointer/runme.rb
Normal file
42
SWIG/Examples/ruby/pointer/runme.rb
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# file: runme.rb
|
||||
|
||||
require 'example'
|
||||
|
||||
# First create some objects using the pointer library.
|
||||
print "Testing the pointer library\n"
|
||||
a = Example::ptrcreate("int", 37)
|
||||
b = Example::ptrcreate("int", 42)
|
||||
c = Example::ptrcreate("int");
|
||||
|
||||
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::ptrvalue(c)
|
||||
print " 37 + 42 = #{r}\n"
|
||||
|
||||
# Clean up the pointers
|
||||
Example::ptrfree(a)
|
||||
Example::ptrfree(b)
|
||||
Example::ptrfree(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"
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue