Ruby: pm_multi_target_state_t Struct Reference

Ruby 4.0.5p0 (2026-05-20 revision 64336ffd0ee9e1f4c05891695a3d7b49cb709721)

Data Fields
pm_multi_target_state_t Struct Reference

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

## Detailed Description

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 4865 of file prism_compile.c.

## Field Documentation

## ◆ head

pm_multi_target_state_node_t* pm_multi_target_state_t::head

Definition at line 4874 of file prism_compile.c.

## ◆ position

size_t pm_multi_target_state_t::position

Definition at line 4871 of file prism_compile.c.

## ◆ stack_size

size_t pm_multi_target_state_t::stack_size

Definition at line 4867 of file prism_compile.c.

## ◆ tail

pm_multi_target_state_node_t* pm_multi_target_state_t::tail

Definition at line 4877 of file prism_compile.c.

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

- prism_compile.c