diff options
Diffstat (limited to 'Examples/ruby/operator/runme.rb')
-rw-r--r-- | Examples/ruby/operator/runme.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Examples/ruby/operator/runme.rb b/Examples/ruby/operator/runme.rb new file mode 100644 index 000000000..518d91e9e --- /dev/null +++ b/Examples/ruby/operator/runme.rb @@ -0,0 +1,25 @@ +# Operator overloading example +require 'example' + +include Example + +a = Complex.new(2, 3) +b = Complex.new(-5, 10) + +puts "a = #{a}" +puts "b = #{b}" + +c = a + b +puts "c = #{c}" +puts "a*b = #{a*b}" +puts "a-c = #{a-c}" + +# This should invoke Complex's copy constructor +e = Complex.new(a-c) +e = a - c +puts "e = #{e}" + +# Big expression +f = ((a+b)*(c+b*e)) + (-a) +puts "f = #{f}" + |