|
Prism Ruby parser
|
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 ^^^^^^^^^
| 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`
| pm_location_t pm_class_variable_write_node::name_loc |
ClassVariableWriteNode::name_loc.
The location of the variable name.
@@foo = :bar ^^^^^
| 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
^^^
| pm_location_t pm_class_variable_write_node::operator_loc |
ClassVariableWriteNode::operator_loc.
The location of the = operator.
@@foo = :bar
^