pub type pm_local_variable_read_node_t = pm_local_variable_read_node;Expand description
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
^^^Type: ::PM_LOCAL_VARIABLE_READ_NODE
@extends pm_node_t
Aliased Type§
#[repr(C)]pub struct pm_local_variable_read_node_t {
pub base: pm_node,
pub name: u32,
pub depth: u32,
}Fields§
§base: pm_nodeThe embedded base node.
name: u32LocalVariableReadNode#name
The name of the local variable, which is an identifier.
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: u32LocalVariableReadNode#depth
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 1The 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.