Ruby 4.1.0dev (2026-03-05 revision 8a87cebd1874f8f9f68af8928191ee3f0d97bb28)
Data Fields
pm_alternation_pattern_node Struct Reference

AlternationPatternNode. More...

#include <ast.h>

Data Fields

pm_node_t base
 The embedded base node.
 
PM_NODE_ALIGNAS struct pm_nodeleft
 AlternationPatternNode::left.
 
PM_NODE_ALIGNAS struct pm_noderight
 AlternationPatternNode::right.
 
pm_location_t operator_loc
 AlternationPatternNode::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.
 

Detailed Description

AlternationPatternNode.

Represents an alternation pattern in pattern matching.

foo => bar | baz
       ^^^^^^^^^

Type: PM_ALTERNATION_PATTERN_NODE

Definition at line 1230 of file ast.h.

Field Documentation

◆ base

pm_node_t pm_alternation_pattern_node::base

The embedded base node.

Definition at line 1232 of file ast.h.

Referenced by pm_dump_json().

◆ left

PM_NODE_ALIGNAS struct pm_node* pm_alternation_pattern_node::left

AlternationPatternNode::left.

Represents the left side of the expression.

foo => bar | baz
       ^^^

Definition at line 1242 of file ast.h.

Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().

◆ operator_loc

pm_location_t pm_alternation_pattern_node::operator_loc

AlternationPatternNode::operator_loc.

Represents the alternation operator Location.

foo => bar | baz
           ^

Definition at line 1262 of file ast.h.

Referenced by pm_dump_json().

◆ right

PM_NODE_ALIGNAS struct pm_node* pm_alternation_pattern_node::right

AlternationPatternNode::right.

Represents the right side of the expression.

foo => bar | baz
             ^^^

Definition at line 1252 of file ast.h.

Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().


The documentation for this struct was generated from the following file: