Class ConfiguredNotifySystem
- Namespace
- NMF.Expressions
- Assembly
- NMF.Expressions.Configuration.dll
Denotes a notify system that incrementalizes functions based on a configuration
public class ConfiguredNotifySystem : INotifySystem
- Inheritance
-
ConfiguredNotifySystem
- Implements
- Inherited Members
- Extension Methods
Constructors
ConfiguredNotifySystem(IModelRepository, Configuration, IncrementalizationStrategy)
Creates a new configured notify system
public ConfiguredNotifySystem(IModelRepository repository, Configuration configuration, IncrementalizationStrategy defaultStrategy = IncrementalizationStrategy.InstructionLevel)
Parameters
repository
IModelRepositoryThe model repository
configuration
ConfigurationThe configuration
defaultStrategy
IncrementalizationStrategyThe default strategy to chose if there is no configuration entry
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)
public INotifyExpression<T> CreateLocal<T, TVar>(INotifyExpression<T> inner, INotifyExpression<TVar> localVariable, out string paramName)
Parameters
inner
INotifyExpression<T>localVariable
INotifyExpression<TVar>paramName
string
Returns
Type Parameters
T
TVar
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