Remove obscure mpointer example and replace with member_pointer.i testcase and runtime examples
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9887 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
665917ebae
commit
f5bdd056f7
38 changed files with 397 additions and 929 deletions
54
Examples/test-suite/ruby/member_pointer_runme.rb
Normal file
54
Examples/test-suite/ruby/member_pointer_runme.rb
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
#!/usr/bin/env ruby
|
||||
#
|
||||
# Example using pointers to member functions
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
require 'swig_assert'
|
||||
|
||||
require 'member_pointer'
|
||||
|
||||
include Member_pointer
|
||||
|
||||
def check(what, expected, actual)
|
||||
if not expected == actual
|
||||
raise RuntimeError, "Failed: #{what} Expected: #{expected} Actual: #{actual}"
|
||||
end
|
||||
end
|
||||
|
||||
# Get the pointers
|
||||
|
||||
area_pt = Member_pointer::areapt
|
||||
perim_pt = Member_pointer::perimeterpt
|
||||
|
||||
# Create some objects
|
||||
|
||||
s = Member_pointer::Square.new(10)
|
||||
|
||||
# Do some calculations
|
||||
|
||||
check "Square area ", 100.0, Member_pointer::do_op(s, area_pt)
|
||||
check "Square perim", 40.0, Member_pointer::do_op(s, perim_pt)
|
||||
|
||||
memberPtr = Member_pointer::areavar
|
||||
memberPtr = Member_pointer::perimetervar
|
||||
|
||||
# Try the variables
|
||||
check "Square area ", 100.0, Member_pointer::do_op(s, Member_pointer::areavar)
|
||||
check "Square perim", 40.0, Member_pointer::do_op(s, Member_pointer::perimetervar)
|
||||
|
||||
# Modify one of the variables
|
||||
Member_pointer::areavar = perim_pt
|
||||
|
||||
check "Square perimeter", 40.0, Member_pointer::do_op(s, Member_pointer::areavar)
|
||||
|
||||
# Try the constants
|
||||
|
||||
memberPtr = Member_pointer::AREAPT
|
||||
memberPtr = Member_pointer::PERIMPT
|
||||
memberPtr = Member_pointer::NULLPT
|
||||
|
||||
check "Square area ", 100.0, Member_pointer::do_op(s, Member_pointer::AREAPT)
|
||||
check "Square perim", 40.0, Member_pointer::do_op(s, Member_pointer::PERIMPT)
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue