Mini Shell
--- !ruby/object:RI::ClassDescription
attributes:
- !ruby/object:RI::Attribute
comment:
name: denominator
rw: R
- !ruby/object:RI::Attribute
comment:
name: numerator
rw: R
class_methods:
- !ruby/object:RI::MethodSummary
name: new
- !ruby/object:RI::MethodSummary
name: new!
- !ruby/object:RI::MethodSummary
name: reduce
comment:
- !ruby/struct:SM::Flow::P
body: Rational implements a rational class for numbers.
- !ruby/struct:SM::Flow::P
body: <em>A rational number is a number that can be expressed as a fraction p/q where p and q are integers and q != 0. A rational number p/q is said to have numerator p and denominator q. Numbers that are not rational are called irrational numbers.</em> (http://mathworld.wolfram.com/RationalNumber.html)
- !ruby/struct:SM::Flow::P
body: "To create a Rational Number:"
- !ruby/struct:SM::Flow::VERB
body: " Rational(a,b) # -> a/b\n Rational.new!(a,b) # -> a/b\n"
- !ruby/struct:SM::Flow::P
body: "Examples:"
- !ruby/struct:SM::Flow::VERB
body: " Rational(5,6) # -> 5/6\n Rational(5) # -> 5/1\n"
- !ruby/struct:SM::Flow::P
body: "Rational numbers are reduced to their lowest terms:"
- !ruby/struct:SM::Flow::VERB
body: " Rational(6,10) # -> 3/5\n"
- !ruby/struct:SM::Flow::P
body: "But not if you use the unusual method "new!":"
- !ruby/struct:SM::Flow::VERB
body: " Rational.new!(6,10) # -> 6/10\n"
- !ruby/struct:SM::Flow::P
body: "Division by zero is obviously not allowed:"
- !ruby/struct:SM::Flow::VERB
body: " Rational(3,0) # -> ZeroDivisionError\n"
constants:
- !ruby/object:RI::Constant
comment:
name: Unify
value: "true"
full_name: Rational
includes: []
instance_methods:
- !ruby/object:RI::MethodSummary
name: "%"
- !ruby/object:RI::MethodSummary
name: "*"
- !ruby/object:RI::MethodSummary
name: "**"
- !ruby/object:RI::MethodSummary
name: "**"
- !ruby/object:RI::MethodSummary
name: +
- !ruby/object:RI::MethodSummary
name: "-"
- !ruby/object:RI::MethodSummary
name: /
- !ruby/object:RI::MethodSummary
name: <=>
- !ruby/object:RI::MethodSummary
name: ==
- !ruby/object:RI::MethodSummary
name: abs
- !ruby/object:RI::MethodSummary
name: ceil
- !ruby/object:RI::MethodSummary
name: coerce
- !ruby/object:RI::MethodSummary
name: div
- !ruby/object:RI::MethodSummary
name: divmod
- !ruby/object:RI::MethodSummary
name: floor
- !ruby/object:RI::MethodSummary
name: hash
- !ruby/object:RI::MethodSummary
name: inspect
- !ruby/object:RI::MethodSummary
name: inspect
- !ruby/object:RI::MethodSummary
name: power2
- !ruby/object:RI::MethodSummary
name: round
- !ruby/object:RI::MethodSummary
name: to_f
- !ruby/object:RI::MethodSummary
name: to_i
- !ruby/object:RI::MethodSummary
name: to_r
- !ruby/object:RI::MethodSummary
name: to_s
- !ruby/object:RI::MethodSummary
name: truncate
name: Rational
superclass: Object
Zerion Mini Shell 1.0