Class: RubyModKit::Node::ParameterNode
- Defined in:
- lib/ruby_mod_kit/node/parameter_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, #node_at, #offset, #parameter_node_at, #slice, #statements_node_at, #wrap
Constructor Details
#initialize(prism_node, parent:, prev: nil) ⇒ void
30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/ruby_mod_kit/node/parameter_node.rb', line 30 def initialize(prism_node, parent:, prev: nil) @prism_node = prism_node @parent = parent @prev = prev case prism_node when Prism::RequiredParameterNode, Prism::OptionalKeywordParameterNode, Prism::OptionalParameterNode, Prism::RequiredKeywordParameterNode, Prism::RestParameterNode, Prism::BlockParameterNode super() else raise RubyModKit::Error, "unexpected prism node #{prism_node.class}" end end |
Instance Attribute Details
#parent ⇒ Object (readonly)
: Node::BaseNode
19 20 21 |
# File 'lib/ruby_mod_kit/node/parameter_node.rb', line 19 def parent @parent end |
#prev ⇒ Object (readonly)
: Node::BaseNode | nil
20 21 22 |
# File 'lib/ruby_mod_kit/node/parameter_node.rb', line 20 def prev @prev end |
Instance Method Details
#name ⇒ Symbol?
46 47 48 |
# File 'lib/ruby_mod_kit/node/parameter_node.rb', line 46 def name @prism_node.name end |