Ruby 3.4.1p0 (2024-12-25 revision 48d4efcb85000e1ebae42004e963b5d0cedddcf2)
|
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 4409 of file prism_compile.c.
pm_multi_target_state_node_t* pm_multi_target_state_t::head |
Definition at line 4418 of file prism_compile.c.
size_t pm_multi_target_state_t::position |
Definition at line 4415 of file prism_compile.c.
size_t pm_multi_target_state_t::stack_size |
Definition at line 4411 of file prism_compile.c.
pm_multi_target_state_node_t* pm_multi_target_state_t::tail |
Definition at line 4421 of file prism_compile.c.