Deep.Net


Collection

Namespace: SymTensor.Compiler
Parent Module: ExecUnit

a collection of ExecUnits

Constructors

ConstructorDescription
new(eus)
Signature: (eus:ExecUnitT list) -> Collection

CompiledName: .ctor

Instance members

Instance memberDescription
AllPredecessorsOf(eu)
Signature: eu:ExecUnitT -> seq<ExecUnitT>

returns all predecessors of eu (execution units on which eu depends (indirectly))

AllSuccessorsOf(eu)
Signature: eu:ExecUnitT -> seq<ExecUnitT>

returns all successors of eu (execution units that depend (indirectly) on eu)

ById(id)
Signature: id:ExecUnitIdT -> ExecUnitT

execution unit by id

DependantsOf(eu)
Signature: eu:ExecUnitT -> seq<ExecUnitT>

all ExecUnits that depend directly on eu

DependsOn(eu)
Signature: eu:ExecUnitT -> ExecUnitT list

all ExecUnits that eu directly depends on

ExecUnits
Signature: ExecUnitT list

list of all execution unit contained in this collection

CompiledName: get_ExecUnits

IsSuccessorOf(a b)
Signature: a:ExecUnitT -> b:ExecUnitT -> bool

true if a is a successor of b. (a depends (indirectly) on b)

SortedByDep
Signature: ExecUnitT list

a list of ExecUnits in this collection so that an ExecUnit comes after all ExecUnits it depends on

CompiledName: get_SortedByDep

StoresToVar(vs)
Signature: vs:VarSpecT -> seq<ExecUnitT>

all StoreToVar ExecUnits that store into the given variable

WalkByDeps(processFn)
Signature: (processFn:(ExecUnitT -> HashSet<ExecUnitIdT> -> unit)) -> unit

Walks all ExecUnits contained in this collection calling processFn for each. The order is so that each execution unit is visited after all the nodes it depends on have been visited.

Fork me on GitHub