Class InstructionLevelNotifySystem
- Namespace
- NMF.Expressions
- Assembly
- NMF.Expressions.dll
Represents an implementation of an incremental computation system on instruction level
public class InstructionLevelNotifySystem : INotifySystem
- Inheritance
-
InstructionLevelNotifySystem
- Implements
- Derived
- Inherited Members
- Extension Methods
Constructors
InstructionLevelNotifySystem()
Creates a new instance
public InstructionLevelNotifySystem()
Properties
Instance
Gets the default instruction-level-incremental system
public static InstructionLevelNotifySystem Instance { get; }
Property Value
Methods
CreateExpression(Expression, IEnumerable<ParameterExpression>, IDictionary<string, object>)
Creates an incremental expression for the given code expression
public INotifyExpression CreateExpression(Expression expression, IEnumerable<ParameterExpression> parameters, IDictionary<string, object> parameterMappings)
Parameters
expression
ExpressionThe expression from which to create an incremental expression
parameters
IEnumerable<ParameterExpression>The parameters of the expression
parameterMappings
IDictionary<string, object>A given mapping of parameters
Returns
- INotifyExpression
An incremental expression object
CreateExpression<T>(Expression, IEnumerable<ParameterExpression>, IDictionary<string, object>)
Creates an incremental expression for the given code expression
public INotifyExpression<T> CreateExpression<T>(Expression expression, IEnumerable<ParameterExpression> parameters, IDictionary<string, object> parameterMappings)
Parameters
expression
ExpressionThe expression from which to create an incremental expression
parameters
IEnumerable<ParameterExpression>The parameters of the expression
parameterMappings
IDictionary<string, object>A given mapping of parameters
Returns
- INotifyExpression<T>
An incremental expression object
Type Parameters
T
The type of the expression
CreateLocal<T, TVar>(INotifyExpression<T>, INotifyExpression<TVar>, out string)
Creates a local variable expression for the given expression and the given local variable
public INotifyExpression<T> CreateLocal<T, TVar>(INotifyExpression<T> inner, INotifyExpression<TVar> localVariable, out string paramName)
Parameters
inner
INotifyExpression<T>The expression for which the local variable should be created
localVariable
INotifyExpression<TVar>The local variable
paramName
stringReturns a parameter name under which the local variable can be referenced
Returns
- INotifyExpression<T>
The inner expression withthe local variable attached to it
Type Parameters
T
The type of the expression whose scope should be used to create the local variable
TVar
The type of the variable
CreateReversableExpression<T>(Expression, IEnumerable<ParameterExpression>, IDictionary<string, object>)
Creates an incremental expression for the given code expression
public INotifyReversableExpression<T> CreateReversableExpression<T>(Expression expression, IEnumerable<ParameterExpression> parameters, IDictionary<string, object> parameterMappings)
Parameters
expression
ExpressionThe expression from which to create an incremental expression
parameters
IEnumerable<ParameterExpression>The parameters of the expression
parameterMappings
IDictionary<string, object>A given mapping of parameters
Returns
- INotifyReversableExpression<T>
An incremental expression object
Type Parameters
T
The type of the expression