System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.ExpressionConverter C# (CSharp) Method

ExpressionConverter() private method

private ExpressionConverter ( System.Data.Entity.Core.Objects.ELinq.Funcletizer funcletizer, Expression expression ) : System.Collections.Generic
funcletizer System.Data.Entity.Core.Objects.ELinq.Funcletizer
expression System.Linq.Expressions.Expression
return System.Collections.Generic
        internal ExpressionConverter(Funcletizer funcletizer, Expression expression)
        {
            DebugCheck.NotNull(funcletizer);
            DebugCheck.NotNull(expression);

            // Funcletize the expression (identify subexpressions that should be evaluated
            // locally)
            _funcletizer = funcletizer;
            expression = funcletizer.Funcletize(expression, out _recompileRequired);

            // Normalize the expression (replace obfuscated parts of the tree with simpler nodes)
            var normalizer = new LinqExpressionNormalizer();
            _expression = normalizer.Visit(expression);

            _perspective = funcletizer.RootContext.Perspective;
            _bindingContext = new BindingContext();
            _ignoreInclude = 0;
            _orderByLifter = new OrderByLifter(_aliasGenerator);
        }