Table of Contents

Class StackDataSource<TInstruction>

Namespace
Echo.DataFlow
Assembly
Echo.DataFlow.dll

Represents a data source that refers to a stack value produced by a node in a data flow graph.

public class StackDataSource<TInstruction> : DataSource<TInstruction> where TInstruction : notnull

Type Parameters

TInstruction

The type of data stored in each data flow node.

Inheritance
DataSource<TInstruction>
StackDataSource<TInstruction>
Inherited Members

Constructors

StackDataSource(DataFlowNode<TInstruction>)

Creates a new stack data source, referencing the first stack value produced by the provided node.

public StackDataSource(DataFlowNode<TInstruction> node)

Parameters

node DataFlowNode<TInstruction>

The node producing the value.

StackDataSource(DataFlowNode<TInstruction>, int)

Creates a new stack data source, referencing a stack value produced by the provided node.

public StackDataSource(DataFlowNode<TInstruction> node, int slotIndex)

Parameters

node DataFlowNode<TInstruction>

The node producing the value.

slotIndex int

The index of the stack value that was produced by the node.

Properties

SlotIndex

Gets a value indicating the stack slot index that was pushed by the instruction referenced in Node.

public int SlotIndex { get; }

Property Value

int

Type

Gets the type of data dependency that this data source encodes.

public override DataDependencyType Type { get; }

Property Value

DataDependencyType

Methods

Equals(DataSource<TInstruction>)

Determines whether the data sources are considered equal.

protected override bool Equals(DataSource<TInstruction> other)

Parameters

other DataSource<TInstruction>

The other data source.

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string