public Expression <Func <T1, T2, bool> > GetInequalityExpression <T1, T2>()
        {
            IExpresionList <T1, T2> config;

            if (dictionary.TryGetValue <T1, T2>(out config))
            {
                return(inequalityComposer.Build(config, inequalityConstructor));
            }

            return(inequalityConstructor.Build <T1, T2>());
        }
Exemplo n.º 2
0
        public Expression <Func <T1, T2, bool> > BuildExpression <T1, T2, TReturn1, TReturn2>(Expression <Func <T1, TReturn1> > a, Expression <Func <T2, TReturn2> > b)
        {
            IExpresionList <TReturn1, TReturn2> config;

            if (dictionary.TryGetValue <TReturn1, TReturn2>(out config))
            {
                var expr = inequalityComposer.Build(config, this);

                return(a.NestExpression(b, expr));
            }

            return(this.Build <T1, T2, TReturn1, TReturn2>(a, b));
        }