Class StackDependency<TInstruction>
Represents a collection of data sources for a single stack slot dependency of a node.
public class StackDependency<TInstruction> : DataDependency<StackDataSource<TInstruction>, TInstruction>, ISet<StackDataSource<TInstruction>>, ICollection<StackDataSource<TInstruction>>, IEnumerable<StackDataSource<TInstruction>>, IEnumerable where TInstruction : notnull
Type Parameters
TInstructionThe type of instructions to put in a data flow node.
- Inheritance
-
DataDependency<StackDataSource<TInstruction>, TInstruction>StackDependency<TInstruction>
- Implements
-
ISet<StackDataSource<TInstruction>>ICollection<StackDataSource<TInstruction>>IEnumerable<StackDataSource<TInstruction>>
- Inherited Members
Methods
Add(DataFlowNode<TInstruction>)
Adds a data source to the dependency, referencing the first stack value produced by the provided node.
public StackDataSource<TInstruction> Add(DataFlowNode<TInstruction> node)
Parameters
nodeDataFlowNode<TInstruction>The node producing the value.
Returns
- StackDataSource<TInstruction>
The stack data source.
Add(DataFlowNode<TInstruction>, int)
Adds a data source to the dependency, referencing a stack value produced by the provided node.
public StackDataSource<TInstruction> Add(DataFlowNode<TInstruction> node, int slotIndex)
Parameters
nodeDataFlowNode<TInstruction>The node producing the value.
slotIndexintThe index of the stack value that was produced by the node.
Returns
- StackDataSource<TInstruction>
The stack data source.