Class CallNode
public sealed class CallNode : NDExpr
- Inheritance
-
CallNode
- Inherited Members
- Extension Methods
Constructors
CallNode(Delegate, NDExpr[])
public CallNode(Delegate func, NDExpr[] args)
Parameters
CallNode(MethodInfo, object?, NDExpr[])
public CallNode(MethodInfo method, object? target, NDExpr[] args)
Parameters
methodMethodInfotargetobjectargsNDExpr[]
Properties
SupportsSimd
True if this node and its entire sub-tree have a SIMD emit path. Structural and type-independent — prefer SupportsSimdAt(NPTypeCode) for the compile decision, since some ops only vectorize at certain element types/runtimes.
public override bool SupportsSimd { get; }
Property Value
Methods
AppendSignature(StringBuilder)
Stable structural signature. Used to derive a cache key when the user doesn't supply one.
public override void AppendSignature(StringBuilder sb)
Parameters
EmitScalar(ILGenerator, NDExprCompileContext)
Emit scalar code. On exit, the evaluation stack must have exactly
one value of dtype ctx.OutputType.
public override void EmitScalar(ILGenerator il, NDExprCompileContext ctx)
Parameters
ilILGeneratorctxNDExprCompileContext
EmitVector(ILGenerator, NDExprCompileContext)
Emit vector code. On exit, the evaluation stack must have exactly
one Vector{W}<T> of element type ctx.OutputType.
Called only when SupportsSimd is true and all input
types equal the output type.
public override void EmitVector(ILGenerator il, NDExprCompileContext ctx)
Parameters
ilILGeneratorctxNDExprCompileContext