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
repositoryIModelRepositoryThe model repository
configurationConfigurationThe configuration
defaultStrategyIncrementalizationStrategyThe 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
expressionExpressionThe expression from which to create an incremental expression
parametersIEnumerable<ParameterExpression>The parameters of the expression
parameterMappingsIDictionary<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
expressionExpressionThe expression from which to create an incremental expression
parametersIEnumerable<ParameterExpression>The parameters of the expression
parameterMappingsIDictionary<string, object>A given mapping of parameters
Returns
- INotifyExpression<T>
An incremental expression object
Type Parameters
TThe 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
innerINotifyExpression<T>localVariableINotifyExpression<TVar>paramNamestring
Returns
Type Parameters
TTVar
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
expressionExpressionThe expression from which to create an incremental expression
parametersIEnumerable<ParameterExpression>The parameters of the expression
parameterMappingsIDictionary<string, object>A given mapping of parameters
Returns
- INotifyReversableExpression<T>
An incremental expression object
Type Parameters
TThe type of the expression