Ruby
3.4.0dev (2024-12-06 revision 892c46283a5ea4179500d951c9d4866c0051f27b)
|
ClassVariableWriteNode. More...
#include <ast.h>
Data Fields | |
pm_node_t | base |
The embedded base node. More... | |
pm_constant_id_t | name |
ClassVariableWriteNode::name. More... | |
pm_location_t | name_loc |
ClassVariableWriteNode::name_loc. More... | |
struct pm_node * | value |
ClassVariableWriteNode::value. More... | |
pm_location_t | operator_loc |
ClassVariableWriteNode::operator_loc. More... | |
Data Fields inherited from pm_node | |
pm_node_type_t | type |
This represents the type of the node. More... | |
pm_node_flags_t | flags |
This represents any flags on the node. More... | |
uint32_t | node_id |
The unique identifier for this node, which is deterministic based on the source. More... | |
pm_location_t | location |
This is the location of the node in the source. More... | |
ClassVariableWriteNode.
Represents writing to a class variable.
@@foo = 1 ^^^^^^^^^
pm_node_t pm_class_variable_write_node::base |
pm_constant_id_t pm_class_variable_write_node::name |
ClassVariableWriteNode::name.
The name of the class variable, which is a @@
followed by an identifier.
@@abc = 123 # name `@@abc` @@_test = :test # name `@@_test`
Definition at line 2946 of file ast.h.
Referenced by pm_dump_json().
pm_location_t pm_class_variable_write_node::name_loc |
ClassVariableWriteNode::name_loc.
The location of the variable name.
@@foo = :bar ^^^^^
Definition at line 2956 of file ast.h.
Referenced by pm_dump_json().
pm_location_t pm_class_variable_write_node::operator_loc |
ClassVariableWriteNode::operator_loc.
The location of the =
operator.
@@foo = :bar ^
Definition at line 2979 of file ast.h.
Referenced by pm_dump_json().
struct pm_node* pm_class_variable_write_node::value |
ClassVariableWriteNode::value.
The value to write to the class variable. This can be any non-void expression.
@@foo = :bar ^^^^ @@_xyz = 123 ^^^
Definition at line 2969 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().