|
Ruby 3.5.0dev (2025-10-25 revision c6d1458421796786d26e084b48a0a4a7e3b40867)
|
ConstantPathNode. More...
#include <ast.h>
Data Fields | |
| pm_node_t | base |
| The embedded base node. | |
| struct pm_node * | parent |
| ConstantPathNode::parent. | |
| pm_constant_id_t | name |
| ConstantPathNode::name. | |
| pm_location_t | delimiter_loc |
| ConstantPathNode::delimiter_loc. | |
| pm_location_t | name_loc |
| ConstantPathNode::name_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. | |
ConstantPathNode.
Represents accessing a constant through a path of :: operators.
Foo::Bar ^^^^^^^^
Type: PM_CONSTANT_PATH_NODE
| pm_node_t pm_constant_path_node::base |
| pm_location_t pm_constant_path_node::delimiter_loc |
ConstantPathNode::delimiter_loc.
The location of the :: delimiter.
::Foo ^^ One::Two ^^
Definition at line 3225 of file ast.h.
Referenced by pm_dump_json().
| pm_constant_id_t pm_constant_path_node::name |
ConstantPathNode::name.
The name of the constant being accessed. This could be nil in the event of a syntax error.
Definition at line 3212 of file ast.h.
Referenced by pm_dump_json().
| pm_location_t pm_constant_path_node::name_loc |
ConstantPathNode::name_loc.
The location of the name of the constant.
::Foo
^^^
One::Two
^^^
Definition at line 3238 of file ast.h.
Referenced by pm_dump_json().
| struct pm_node* pm_constant_path_node::parent |
ConstantPathNode::parent.
The left-hand node of the path, if present. It can be nil or any non-void expression. It will be nil when the constant lookup is at the root of the module tree.
Foo::Bar ^^^ self::Test ^^^^ a.b::C ^^^
Definition at line 3205 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().