/trunk/Examples/test-suite/ruby/virtual_poly_runme.rb
# · Ruby · 33 lines · 12 code · 7 blank · 14 comment · 8 complexity · b185d1d196966ca36d05245899e545f3 MD5 · raw file
- #!/usr/bin/env ruby
- #
- # Put description here
- #
- #
- #
- #
- #
- require 'swig_assert'
- require 'virtual_poly'
- d = Virtual_poly::NDouble.new(3.5)
- i = Virtual_poly::NInt.new(2)
- #
- # polymorphic return type working
- #
- dc = d.copy
- ic = i.copy
- raise RuntimeError if d.get != dc.get
- raise RuntimeError if i.get != ic.get
- #
- # 'narrowing' working ('nnumber' returns a NNumber)
- #
- ddc = Virtual_poly::NDouble.narrow(dc.nnumber)
- raise RuntimeError if d.get != ddc.get
- dic = Virtual_poly::NInt.narrow(ic.nnumber)
- raise RuntimeError if i.get != dic.get