| Ruby 3.5.0dev (2025-10-31 revision 5b2707f39b1485620b9e91573a90d93c2129e126)
    | 
ClassVariableWriteNode. More...
#include <ast.h>
| Data Fields | |
| pm_node_t | base | 
| The embedded base node. | |
| pm_constant_id_t | name | 
| ClassVariableWriteNode::name. | |
| pm_location_t | name_loc | 
| ClassVariableWriteNode::name_loc. | |
| struct pm_node * | value | 
| ClassVariableWriteNode::value. | |
| pm_location_t | operator_loc | 
| ClassVariableWriteNode::operator_loc. | |
|  Data Fields inherited from pm_node | |
| pm_node_type_t | type | 
| This represents the type of the node. | |
| pm_node_flags_t | flags | 
| This represents any flags on the node. | |
| uint32_t | node_id | 
| The unique identifier for this node, which is deterministic based on the source. | |
| pm_location_t | location | 
| This is the location of the node in the source. | |
ClassVariableWriteNode.
Represents writing to a class variable.
@@foo = 1 ^^^^^^^^^
Type: PM_CLASS_VARIABLE_WRITE_NODE
| 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 2999 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 3009 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 3032 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 3022 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().