Ruby 4.1.0dev (2026-03-26 revision 2ca2865aa194cf832b205f530b4fb440166aea68)
Data Fields
pm_while_node Struct Reference

WhileNode. More...

#include <ast.h>

Data Fields

pm_node_t base
 The embedded base node.
 
pm_location_t keyword_loc
 WhileNode::keyword_loc.
 
pm_location_t do_keyword_loc
 WhileNode::do_keyword_loc.
 
pm_location_t closing_loc
 WhileNode::closing_loc.
 
PM_NODE_ALIGNAS struct pm_nodepredicate
 WhileNode::predicate.
 
PM_NODE_ALIGNAS struct pm_statements_nodestatements
 WhileNode::statements.
 
- 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

WhileNode.

Represents the use of the while keyword, either in the block form or the modifier form.

bar while foo
^^^^^^^^^^^^^

while foo do bar end
^^^^^^^^^^^^^^^^^^^^

Type: PM_WHILE_NODE

Flags (pm_loop_flags):

Definition at line 7813 of file ast.h.

Field Documentation

◆ base

pm_node_t pm_while_node::base

The embedded base node.

Definition at line 7815 of file ast.h.

◆ closing_loc

pm_location_t pm_while_node::closing_loc

WhileNode::closing_loc.

Definition at line 7830 of file ast.h.

◆ do_keyword_loc

pm_location_t pm_while_node::do_keyword_loc

WhileNode::do_keyword_loc.

Definition at line 7825 of file ast.h.

◆ keyword_loc

pm_location_t pm_while_node::keyword_loc

WhileNode::keyword_loc.

Definition at line 7820 of file ast.h.

◆ predicate

PM_NODE_ALIGNAS struct pm_node* pm_while_node::predicate

WhileNode::predicate.

Definition at line 7835 of file ast.h.

Referenced by pm_visit_child_nodes().

◆ statements

PM_NODE_ALIGNAS struct pm_statements_node* pm_while_node::statements

WhileNode::statements.

Definition at line 7840 of file ast.h.

Referenced by pm_visit_child_nodes().


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