Class: Rubasteme::AST::HoldingSequenceBaseNode

Inherits:
ListNode show all
Defined in:
lib/rubasteme/ast/branch_node.rb

Instance Method Summary collapse

Methods inherited from ListNode

#elements, #empty?, #first, #rest

Methods inherited from BranchNode

#<<, #[], #[]=, #each, #size, #to_a

Methods inherited from Node

#to_a, #to_s, #type

Constructor Details

#initialize(initial_size = 0, sequence_pos = 0, _ = nil) ⇒ HoldingSequenceBaseNode

Returns a new instance of HoldingSequenceBaseNode.



143
144
145
146
147
# File 'lib/rubasteme/ast/branch_node.rb', line 143

def initialize(initial_size = 0, sequence_pos = 0, _ = nil)
  # @nodes = [..., <sequence>, ...]
  super(initial_size, _)
  @sequence_pos = sequence_pos
end

Instance Method Details

#sequenceObject



149
150
151
# File 'lib/rubasteme/ast/branch_node.rb', line 149

def sequence
  @nodes[@sequence_pos]
end

#sequence=(node) ⇒ Object



153
154
155
# File 'lib/rubasteme/ast/branch_node.rb', line 153

def sequence=(node)
  @nodes[@sequence_pos] = node
end