Ruby 3.4.5p51 (2025-07-16 revision 20cda200d3ce092571d0b5d342dadca69636cb0f)
|
As we're compiling a multi target, we need to track additional information whenever there is a parent expression on the left hand side of the target. More...
Data Fields | |
size_t | stack_size |
size_t | position |
pm_multi_target_state_node_t * | head |
pm_multi_target_state_node_t * | tail |
As we're compiling a multi target, we need to track additional information whenever there is a parent expression on the left hand side of the target.
This is because we need to go back and tell the expression where to fetch its parent expression from the stack. We use a linked list of nodes to track this information.
Definition at line 4789 of file prism_compile.c.
pm_multi_target_state_node_t* pm_multi_target_state_t::head |
Definition at line 4798 of file prism_compile.c.
size_t pm_multi_target_state_t::position |
Definition at line 4795 of file prism_compile.c.
size_t pm_multi_target_state_t::stack_size |
Definition at line 4791 of file prism_compile.c.
pm_multi_target_state_node_t* pm_multi_target_state_t::tail |
Definition at line 4801 of file prism_compile.c.