Class: SyntaxTree::LabelEnd

Inherits:
Node
  • Object
show all
Defined in:
lib/syntax_tree/node.rb

Overview

LabelEnd represents the end of a dynamic symbol.

{ "key": value }

In the example above, LabelEnd represents the “":” token at the end of the hash key. This node is important for determining the type of quote being used by the label.

Instance Attribute Summary collapse

Attributes inherited from Node

#location

Instance Method Summary collapse

Methods inherited from Node

#construct_keys, #format, #pretty_print, #to_json

Constructor Details

#initialize(value:, location:) ⇒ LabelEnd



5855
5856
5857
5858
# File 'lib/syntax_tree/node.rb', line 5855

def initialize(value:, location:)
  @value = value
  @location = location
end

Instance Attribute Details

#valueObject (readonly)

String

the end of the label



5853
5854
5855
# File 'lib/syntax_tree/node.rb', line 5853

def value
  @value
end

Instance Method Details

#accept(visitor) ⇒ Object



5860
5861
5862
# File 'lib/syntax_tree/node.rb', line 5860

def accept(visitor)
  visitor.visit_label_end(self)
end

#child_nodesObject Also known as: deconstruct



5864
5865
5866
# File 'lib/syntax_tree/node.rb', line 5864

def child_nodes
  []
end

#deconstruct_keys(_keys) ⇒ Object



5870
5871
5872
# File 'lib/syntax_tree/node.rb', line 5870

def deconstruct_keys(_keys)
  { value: value, location: location }
end