mirror of https://github.com/swig/swig
24 lines
427 B
Ruby
24 lines
427 B
Ruby
require 'example'
|
|
|
|
# create a zoo
|
|
zoo = Example::Zoo.new
|
|
|
|
begin
|
|
# Add in an couple of animals
|
|
tiger1 = Example::Animal.new("tiger1")
|
|
zoo.add_animal(tiger1)
|
|
|
|
# unset variables to force gc
|
|
tiger1 = nil
|
|
end
|
|
|
|
GC.start
|
|
|
|
# Now get the tiger again
|
|
tiger2 = zoo.get_animal(0)
|
|
|
|
# Call a method to verify the animal is still valid and not gc'ed
|
|
if tiger2.get_name != "tiger1"
|
|
raise RuntimeError, "Wrong animal name"
|
|
end
|