Ruby 3.5.0dev (2025-09-16 revision 1213adfe5526d65cce81a9fb127074130c8faea7)
|
FindPatternNode. More...
#include <ast.h>
Data Fields | |
pm_node_t | base |
The embedded base node. | |
struct pm_node * | constant |
FindPatternNode::constant. | |
struct pm_splat_node * | left |
FindPatternNode::left. | |
struct pm_node_list | requireds |
FindPatternNode::requireds. | |
struct pm_node * | right |
FindPatternNode::right. | |
pm_location_t | opening_loc |
FindPatternNode::opening_loc. | |
pm_location_t | closing_loc |
FindPatternNode::closing_loc. | |
![]() | |
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. | |
FindPatternNode.
Represents a find pattern in pattern matching.
foo in *bar, baz, *qux ^^^^^^^^^^^^^^^ foo in [*bar, baz, *qux] ^^^^^^^^^^^^^^^^^ foo in Foo(*bar, baz, *qux) ^^^^^^^^^^^^^^^^^^^^ foo => *bar, baz, *qux ^^^^^^^^^^^^^^^
Type: PM_FIND_PATTERN_NODE
pm_node_t pm_find_pattern_node::base |
pm_location_t pm_find_pattern_node::closing_loc |
FindPatternNode::closing_loc.
The location of the closing brace.
foo in [*bar, baz, *qux] ^ foo in Foo(*bar, baz, *qux) ^
Definition at line 3886 of file ast.h.
Referenced by pm_dump_json().
struct pm_node* pm_find_pattern_node::constant |
FindPatternNode::constant.
Represents the optional constant preceding the pattern
foo in Foo(*bar, baz, *qux) ^^^
Definition at line 3821 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
struct pm_splat_node* pm_find_pattern_node::left |
FindPatternNode::left.
Represents the first wildcard node in the pattern.
foo in *bar, baz, *qux ^^^^ foo in Foo(*bar, baz, *qux) ^^^^
Definition at line 3834 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
pm_location_t pm_find_pattern_node::opening_loc |
FindPatternNode::opening_loc.
The location of the opening brace.
foo in [*bar, baz, *qux] ^ foo in Foo(*bar, baz, *qux) ^
Definition at line 3873 of file ast.h.
Referenced by pm_dump_json().
struct pm_node_list pm_find_pattern_node::requireds |
FindPatternNode::requireds.
Represents the nodes in between the wildcards.
foo in *bar, baz, *qux ^^^ foo in Foo(*bar, baz, 1, *qux) ^^^^^^
Definition at line 3847 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
struct pm_node* pm_find_pattern_node::right |
FindPatternNode::right.
Represents the second wildcard node in the pattern.
foo in *bar, baz, *qux ^^^^ foo in Foo(*bar, baz, *qux) ^^^^
Definition at line 3860 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().