Class: BCDice::Arithmetic::Node::DivideBase
- Defined in:
- lib/bcdice/arithmetic/node.rb
Overview
除算ノードの基底クラス
定数 ROUNDING_METHOD
で端数処理方法を示す記号( ‘U’, ‘R’, ” ) を定義すること。また、除算および端数処理を行う divide_and_round
メソッドを実装すること。
Direct Known Subclasses
DivideWithCeil, DivideWithFloor, DivideWithGameSystemDefault, DivideWithRound
Instance Method Summary collapse
- #eval(round_type) ⇒ Object
-
#initialize(lhs, rhs) ⇒ DivideBase
constructor
ノードを初期化する.
-
#output ⇒ String
メッセージへの出力を返す.
Methods inherited from BinaryOp
Constructor Details
#initialize(lhs, rhs) ⇒ DivideBase
ノードを初期化する
44 45 46 |
# File 'lib/bcdice/arithmetic/node.rb', line 44 def initialize(lhs, rhs) super(lhs, :/, rhs) end |
Instance Method Details
#eval(round_type) ⇒ Object
48 49 50 51 52 |
# File 'lib/bcdice/arithmetic/node.rb', line 48 def eval(round_type) l = @lhs.eval(round_type) r = @rhs.eval(round_type) divide_and_round(l, r, round_type) end |
#output ⇒ String
メッセージへの出力を返す
通常の結果の末尾に、端数処理方法を示す記号を付加する。
59 60 61 |
# File 'lib/bcdice/arithmetic/node.rb', line 59 def output "#{super}#{rounding_method}" end |