Class Nodes.LocalVariableReadNode
java.lang.Object
org.prism.Nodes.Node
org.prism.Nodes.LocalVariableReadNode
- Enclosing class:
Nodes
Represents reading a local variable. Note that this requires that a local variable of the same name has already been written to in the same scope, otherwise it is parsed as a method call.
foo
^^^
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal intThe number of visible scopes that should be searched to find the origin of this local variable.final org.jruby.RubySymbolThe name of the local variable, which is an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).Fields inherited from class org.prism.Nodes.Node
EMPTY_ARRAY, length, startOffset -
Constructor Summary
ConstructorsConstructorDescriptionLocalVariableReadNode(int startOffset, int length, org.jruby.RubySymbol name, int depth) -
Method Summary
Modifier and TypeMethodDescription<T> Taccept(AbstractNodeVisitor<T> visitor) protected String<T> voidvisitChildNodes(AbstractNodeVisitor<T> visitor) Methods inherited from class org.prism.Nodes.Node
endOffset, hasNewLineFlag, setNewLineFlag, setNewLineFlag, toString
-
Field Details
-
name
public final org.jruby.RubySymbol nameThe name of the local variable, which is an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). x # name `:x` _Test # name `:_Test` Note that this can also be an underscore followed by a number for the default block parameters. _1 # name `:_1` -
depth
public final int depthThe number of visible scopes that should be searched to find the origin of this local variable. foo = 1; foo # depth 0 bar = 2; tap { bar } # depth 1 The specific rules for calculating the depth may differ from individual Ruby implementations, as they are not specified by the language. For more information, see [the Prism documentation](https://github.com/ruby/prism/blob/main/docs/local_variable_depth.md).
-
-
Constructor Details
-
LocalVariableReadNode
public LocalVariableReadNode(int startOffset, int length, org.jruby.RubySymbol name, int depth)
-
-
Method Details
-
visitChildNodes
- Specified by:
visitChildNodesin classNodes.Node
-
childNodes
- Specified by:
childNodesin classNodes.Node
-
accept
- Specified by:
acceptin classNodes.Node
-
toString
- Specified by:
toStringin classNodes.Node
-