コード例 #1
0
        private Expression TranslateJoinPredicate(IList <int> leftMapping,
                                                  IList <int> rightMapping, Expression <Func <Tuple, Tuple, bool> > expression)
        {
            var result = new TupleAccessRewriter(leftMapping, ResolveOuterMapping, true).Rewrite(expression,
                                                                                                 expression.Parameters[0]);

            return(new TupleAccessRewriter(rightMapping, ResolveOuterMapping, true).Rewrite(result,
                                                                                            expression.Parameters[1]));
        }
コード例 #2
0
        private Expression TranslateLambda(Provider originalProvider, LambdaExpression expression)
        {
            var replacer = new TupleAccessRewriter(mappings[originalProvider], ResolveOuterMapping, true);

            return(replacer.Rewrite(expression, expression.Parameters[0]));
        }