Class: Dentaku::AST::Operation
- Defined in:
- lib/dentaku/ast/operation.rb
Direct Known Subclasses
Arithmetic, BitwiseAnd, BitwiseOr, CaseWhen, Combinator, Comparator
Instance Attribute Summary collapse
-
#left ⇒ Object
readonly
Returns the value of attribute left.
-
#right ⇒ Object
readonly
Returns the value of attribute right.
Class Method Summary collapse
Instance Method Summary collapse
- #dependencies(context = {}) ⇒ Object
-
#initialize(left, right) ⇒ Operation
constructor
A new instance of Operation.
Methods inherited from Node
arity, peek, precedence, #type
Constructor Details
#initialize(left, right) ⇒ Operation
Returns a new instance of Operation.
16 17 18 19 |
# File 'lib/dentaku/ast/operation.rb', line 16 def initialize(left, right) @left = left @right = right end |
Instance Attribute Details
#left ⇒ Object (readonly)
Returns the value of attribute left.
6 7 8 |
# File 'lib/dentaku/ast/operation.rb', line 6 def left @left end |
#right ⇒ Object (readonly)
Returns the value of attribute right.
6 7 8 |
# File 'lib/dentaku/ast/operation.rb', line 6 def right @right end |
Class Method Details
.max_param_count ⇒ Object
12 13 14 |
# File 'lib/dentaku/ast/operation.rb', line 12 def self.max_param_count arity end |
.min_param_count ⇒ Object
8 9 10 |
# File 'lib/dentaku/ast/operation.rb', line 8 def self.min_param_count arity end |
.right_associative? ⇒ Boolean
25 26 27 |
# File 'lib/dentaku/ast/operation.rb', line 25 def self.right_associative? false end |
Instance Method Details
#dependencies(context = {}) ⇒ Object
21 22 23 |
# File 'lib/dentaku/ast/operation.rb', line 21 def dependencies(context = {}) (left.dependencies(context) + right.dependencies(context)).uniq end |