public static void RegisterEnumerableComposition <T, R>(this IRegisterInvoker register, Expression <Func <T, R> > enumerableCompositionExpression, RulesEngine usingRulesEngine) where R : IEnumerable { var enumerableCompositionInvoker = new EnumerableCompositionInvoker <T, R>(usingRulesEngine, enumerableCompositionExpression); register.RegisterInvoker(enumerableCompositionInvoker); }
public static ConditionalInvoker <T> RegisterCondition <T>(this IRegisterInvoker register, Expression <Func <T, bool> > conditionalExpression) { var conditionalInvoker = new ConditionalInvoker <T>(conditionalExpression, register.RulesRulesEngine); register.RegisterInvoker(conditionalInvoker); return(conditionalInvoker); }
public static void RegisterInvoker(this IRegisterInvoker register, IRuleInvoker ruleInvoker) { register.RegisterInvoker(ruleInvoker); }
public static void RegisterEnumerableComposition <T, R>(this IRegisterInvoker register, Expression <Func <T, R> > enumerableCompositionExpression) where R : IEnumerable { RegisterEnumerableComposition(register, enumerableCompositionExpression, register.RulesRulesEngine); }
public static void RegisterComposition <T, R>(this IRegisterInvoker register, Expression <Func <T, R> > compositionExpression, RulesEngine usingRulesEngine) { var compositionInvoker = new CompositionInvoker <T, R>(usingRulesEngine, compositionExpression); register.RegisterInvoker(compositionInvoker); }
public static void RegisterComposition <T, R>(this IRegisterInvoker register, Expression <Func <T, R> > compositionExpression) { RegisterComposition(register, compositionExpression, register.RulesRulesEngine); }
public static void RegisterRule <T, R>(this IRegisterInvoker register, IRule <R> rule, Expression <Func <T, R> > expressionToInvoke, Expression expressionToBlame) { var ruleInvoker = new RuleInvoker <T, R>(rule, expressionToInvoke, register.RulesRulesEngine.ExpressionCache.Get(expressionToBlame)); register.RegisterInvoker(ruleInvoker); }
public static void RegisterRule <T, R>(this IRegisterInvoker register, IRule <R> rule, Expression <Func <T, R> > expressionToInvoke, LambdaExpression expressionToBlame) { RuleInvoker <T, R> ruleInvoker = new RuleInvoker <T, R>(rule, expressionToInvoke, new EquatableExpression(expressionToBlame)); register.RegisterInvoker(ruleInvoker); }