Ejemplo n.º 1
0
        public static ExpressionAnalysis For(Expression expression)
        {
            var analysis = new ExpressionAnalysis();

            analysis.Visit(expression);

            return(analysis);
        }
Ejemplo n.º 2
0
        public static ExpressionAnalysis For(Expression expression, TranslationSettings settings)
        {
            switch (expression.NodeType)
            {
            case ExpressionType.DebugInfo:
            case ExpressionType.Default:
            case ExpressionType.Extension:
            case ExpressionType.Parameter:
            case ExpressionType.RuntimeVariables:
                return(settings.EmptyAnalysis);
            }

            var analysis = new ExpressionAnalysis(settings);

            analysis.Visit(expression);
            analysis.Finalise();

            return(analysis);
        }