Class: Red::AssignmentNode::OperatorNode::BracketNode
- Inherits:
-
Red::AssignmentNode::OperatorNode
- Object
- Red::AssignmentNode::OperatorNode
- Red::AssignmentNode::OperatorNode::BracketNode
- Defined in:
- lib/red/assignment_nodes.rb
Overview
:nodoc:
Instance Method Summary collapse
- #compile_receiver(receiver, slot) ⇒ Object
-
#initialize(receiver, bracket_contents, operation, expression) ⇒ BracketNode
constructor
A new instance of BracketNode.
Methods inherited from Red::AssignmentNode::OperatorNode
#compile_internals, #compile_node
Constructor Details
#initialize(receiver, bracket_contents, operation, expression) ⇒ BracketNode
Returns a new instance of BracketNode.
79 80 81 |
# File 'lib/red/assignment_nodes.rb', line 79 def initialize(receiver, bracket_contents, operation, expression) @receiver, @slot, @operation, @expression = [receiver, bracket_contents.last, operation, expression].build_nodes end |
Instance Method Details
#compile_receiver(receiver, slot) ⇒ Object
83 84 85 |
# File 'lib/red/assignment_nodes.rb', line 83 def compile_receiver(receiver, slot) return ([:symbol, :string].include?((@slot.data_type rescue :node)) ? "%s.%s" : "%s[%s]") % [receiver, slot] end |