On this page
Maintenance Ruby 3.4 gets fixes, but no new features. Switch to Ruby 4.0 →
Prism::LocalVariableReadNode
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 ^^^
Class methods 2
Instance methods 10
The 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](github.com/ruby/prism/blob/main/docs/local_variable_depth.md).
The name of the local variable, which is an [identifier](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`