/trunk/Examples/test-suite/ruby/virtual_poly_runme.rb
Ruby | 33 lines | 12 code | 7 blank | 14 comment | 8 complexity | b185d1d196966ca36d05245899e545f3 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- #!/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