Class: RubyModKit::Node::SymbolNode
- Defined in:
- lib/ruby_mod_kit/node/symbol_node.rb
Overview
Transpiler program node
Instance Attribute Summary collapse
-
#parent ⇒ Object
readonly
: Node::BaseNode.
-
#prev ⇒ Object
readonly
: Node::BaseNode | nil.
Instance Method Summary collapse
Methods inherited from BaseNode
#ancestors, #children, #def_node_at, #def_parent_node_at, #end_offset, #include?, #inspect, #location, #name, #node_at, #offset, #parameter_node_at, #slice, #statements_node_at, #wrap
Constructor Details
#initialize(prism_node, parent:, prev: nil) ⇒ void
26 27 28 29 30 31 32 33 |
# File 'lib/ruby_mod_kit/node/symbol_node.rb', line 26 def initialize(prism_node, parent:, prev: nil) @prism_node = prism_node @parent = parent @prev = prev raise RubyModKit::Error unless prism_node.is_a?(Prism::SymbolNode) super() end |
Instance Attribute Details
#parent ⇒ Object (readonly)
: Node::BaseNode
15 16 17 |
# File 'lib/ruby_mod_kit/node/symbol_node.rb', line 15 def parent @parent end |
#prev ⇒ Object (readonly)
: Node::BaseNode | nil
16 17 18 |
# File 'lib/ruby_mod_kit/node/symbol_node.rb', line 16 def prev @prev end |
Instance Method Details
#value ⇒ Symbol?
37 38 39 40 41 |
# File 'lib/ruby_mod_kit/node/symbol_node.rb', line 37 def value return @value if defined?(@value) @value = @prism_node.value&.to_sym end |