Ruby  3.4.0dev (2024-12-06 revision 892c46283a5ea4179500d951c9d4866c0051f27b)
Data Fields
pm_for_node Struct Reference

ForNode. More...

#include <ast.h>

Data Fields

pm_node_t base
 The embedded base node. More...
 
struct pm_nodeindex
 ForNode::index. More...
 
struct pm_nodecollection
 ForNode::collection. More...
 
struct pm_statements_nodestatements
 ForNode::statements. More...
 
pm_location_t for_keyword_loc
 ForNode::for_keyword_loc. More...
 
pm_location_t in_keyword_loc
 ForNode::in_keyword_loc. More...
 
pm_location_t do_keyword_loc
 ForNode::do_keyword_loc. More...
 
pm_location_t end_keyword_loc
 ForNode::end_keyword_loc. More...
 
- Data Fields inherited from pm_node
pm_node_type_t type
 This represents the type of the node. More...
 
pm_node_flags_t flags
 This represents any flags on the node. More...
 
uint32_t node_id
 The unique identifier for this node, which is deterministic based on the source. More...
 
pm_location_t location
 This is the location of the node in the source. More...
 

Detailed Description

ForNode.

Represents the use of the for keyword.

for i in a end
^^^^^^^^^^^^^^

Type: PM_FOR_NODE

Definition at line 3874 of file ast.h.

Field Documentation

◆ base

pm_node_t pm_for_node::base

The embedded base node.

Definition at line 3876 of file ast.h.

Referenced by pm_dump_json().

◆ collection

struct pm_node* pm_for_node::collection

ForNode::collection.

The collection to iterate over.

for i in a end
         ^

Definition at line 3897 of file ast.h.

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

◆ do_keyword_loc

pm_location_t pm_for_node::do_keyword_loc

ForNode::do_keyword_loc.

The location of the do keyword, if present.

for i in a do end
           ^^

Definition at line 3939 of file ast.h.

Referenced by pm_dump_json().

◆ end_keyword_loc

pm_location_t pm_for_node::end_keyword_loc

ForNode::end_keyword_loc.

The location of the end keyword.

for i in a end
           ^^^

Definition at line 3949 of file ast.h.

Referenced by pm_dump_json().

◆ for_keyword_loc

pm_location_t pm_for_node::for_keyword_loc

ForNode::for_keyword_loc.

The location of the for keyword.

for i in a end
^^^

Definition at line 3919 of file ast.h.

Referenced by pm_dump_json().

◆ in_keyword_loc

pm_location_t pm_for_node::in_keyword_loc

ForNode::in_keyword_loc.

The location of the in keyword.

for i in a end
      ^^

Definition at line 3929 of file ast.h.

Referenced by pm_dump_json().

◆ index

struct pm_node* pm_for_node::index

ForNode::index.

The index expression for for loops.

for i in a end
    ^

Definition at line 3887 of file ast.h.

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

◆ statements

struct pm_statements_node* pm_for_node::statements

ForNode::statements.

Represents the body of statements to execute for each iteration of the loop.

for i in a
  foo(i)
  ^^^^^^
end

Definition at line 3909 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: