|
Ruby 4.1.0dev (2026-03-05 revision 858c96c568b64a5fcb7f93b567643e7b2b565307)
|
ClassNode. More...
#include <ast.h>
Data Fields | |
| pm_node_t | base |
| The embedded base node. | |
| pm_constant_id_list_t | locals |
| ClassNode::locals. | |
| pm_location_t | class_keyword_loc |
| ClassNode::class_keyword_loc. | |
| PM_NODE_ALIGNAS struct pm_node * | constant_path |
| ClassNode::constant_path. | |
| pm_location_t | inheritance_operator_loc |
| ClassNode::inheritance_operator_loc. | |
| PM_NODE_ALIGNAS struct pm_node * | superclass |
| ClassNode::superclass. | |
| PM_NODE_ALIGNAS struct pm_node * | body |
| ClassNode::body. | |
| pm_location_t | end_keyword_loc |
| ClassNode::end_keyword_loc. | |
| pm_constant_id_t | name |
| ClassNode::name. | |
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. | |
ClassNode.
Represents a class declaration involving the class keyword.
class Foo end ^^^^^^^^^^^^^
Type: PM_CLASS_NODE
| pm_node_t pm_class_node::base |
| PM_NODE_ALIGNAS struct pm_node* pm_class_node::body |
ClassNode::body.
Represents the body of the class.
class Foo; bar; end
^^^
Definition at line 2752 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
| pm_location_t pm_class_node::class_keyword_loc |
ClassNode::class_keyword_loc.
Represents the Location of the class keyword.
class Foo end ^^^^^
Definition at line 2717 of file ast.h.
Referenced by pm_dump_json().
| PM_NODE_ALIGNAS struct pm_node* pm_class_node::constant_path |
ClassNode::constant_path.
Definition at line 2722 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
| pm_location_t pm_class_node::end_keyword_loc |
ClassNode::end_keyword_loc.
Represents the Location of the end keyword.
class Foo end
^^^
Definition at line 2762 of file ast.h.
Referenced by pm_dump_json().
| pm_location_t pm_class_node::inheritance_operator_loc |
ClassNode::inheritance_operator_loc.
Represents the Location of the < operator.
class Foo < Bar
^
Definition at line 2732 of file ast.h.
Referenced by pm_dump_json().
| pm_constant_id_list_t pm_class_node::locals |
ClassNode::locals.
Definition at line 2707 of file ast.h.
Referenced by pm_dump_json(), and pm_node_destroy().
| pm_constant_id_t pm_class_node::name |
ClassNode::name.
The name of the class.
class Foo end # name `:Foo`
Definition at line 2771 of file ast.h.
Referenced by pm_dump_json().
| PM_NODE_ALIGNAS struct pm_node* pm_class_node::superclass |
ClassNode::superclass.
Represents the superclass of the class.
class Foo < Bar
^^^
Definition at line 2742 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().