This is the base structure that represents a node in the syntax tree.
More...
#include <ast.h>
|
| 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.
|
| |
This is the base structure that represents a node in the syntax tree.
It is embedded into every node type.
Definition at line 1090 of file ast.h.
◆ flags
| pm_node_flags_t pm_node::flags |
This represents any flags on the node.
Some are common to all nodes, and some are specific to the type of node.
Definition at line 1101 of file ast.h.
◆ location
This is the location of the node in the source.
It is a range of bytes containing a start and an end.
Definition at line 1115 of file ast.h.
◆ node_id
| uint32_t pm_node::node_id |
The unique identifier for this node, which is deterministic based on the source.
It is used to identify unique nodes across parses. Nodes created outside of parsing have no position in the source and can use 0, which no parsed node uses.
Definition at line 1109 of file ast.h.
◆ type
| pm_node_type_t pm_node::type |
This represents the type of the node.
It somewhat maps to the nodes that existed in the original grammar and ripper, but it is not a 1:1 mapping.
Definition at line 1095 of file ast.h.
The documentation for this struct was generated from the following file: