Exemplo n.º 1
0
 public Expression Visit(ParenthesesExpression expression)
 {
     // TODO when should the parantheses be removed?
     // TODO while the evaluation is still correct (due to the nesting of the nodes),
     //      the resulting expression is incorrect when printing it as a string
     return(expression.Expression.Accept(this));
 }
        protected virtual bool CanExistInStatement(Expression expression)
        {
            if (expression.CodeNodeType == CodeNodeType.MethodInvocationExpression ||
                expression.CodeNodeType == CodeNodeType.DelegateInvokeExpression ||
                expression.CodeNodeType == CodeNodeType.AwaitExpression)
            {
                return(true);
            }
            BinaryExpression binEx = null;

            if (expression.CodeNodeType == CodeNodeType.ParenthesesExpression)
            {
                ParenthesesExpression parenthesesExpression = expression as ParenthesesExpression;
                if (parenthesesExpression.Expression.CodeNodeType == CodeNodeType.BinaryExpression)
                {
                    binEx = parenthesesExpression.Expression as BinaryExpression;
                }
            }
            else if (expression.CodeNodeType == CodeNodeType.BinaryExpression)
            {
                binEx = expression as BinaryExpression;
            }
            if (binEx != null && (binEx.IsAssignmentExpression || binEx.IsSelfAssign))
            {
                return(true);
            }
            return(false);
        }
Exemplo n.º 3
0
        // TODO:4.7

        // 4.8
        int IExpressionVisitor <int> .VisitParentheses(ParenthesesExpression expression)
        {
            _Writer.Write('(');
            expression.Expression.Accept(this);
            _Writer.Write(')');

            return(0);
        }
Exemplo n.º 4
0
 public ISet <DescriptorKind> Visit(ParenthesesExpression expression)
 {
     return(expression.Expression.Accept(this));
 }
Exemplo n.º 5
0
 public virtual void VisitParenthesesExpression(ParenthesesExpression node)
 {
     Visit(node.Expression);
 }
Exemplo n.º 6
0
 public virtual ICodeNode VisitParenthesesExpression(ParenthesesExpression node)
 {
     node.Expression = (Expression)Visit(node.Expression);
     return(node);
 }
Exemplo n.º 7
0
 public virtual void VisitParenthesesExpression(ParenthesesExpression node)
 {
     this.Visit(node.get_Expression());
     return;
 }
Exemplo n.º 8
0
 private string GetExpression(ParenthesesExpression expression, ref List<OleDbParameter> parameters)
 {
     return " ( " + GetExpressionDispatch(expression.Children[0], ref parameters) + " ) ";
 }
 public IEnumerable <Expression> Visit(ParenthesesExpression expression)
 {
     return(Visit(expression.Expression));
 }
 public virtual ICodeNode VisitParenthesesExpression(ParenthesesExpression node)
 {
     node.set_Expression((Expression)this.Visit(node.get_Expression()));
     return(node);
 }
Exemplo n.º 11
0
            public Expression Visit(ParenthesesExpression expression)
            {
                var visited = expression.Expression.Accept(this);

                return(visited == expression ? expression : new ParenthesesExpression(visited));
            }
 public SimplifiedExpression Visit(ParenthesesExpression expression)
 {
     return(expression.Expression.Accept(this));
 }
 private string GetExpression(ParenthesesExpression expression, ref List <OleDbParameter> parameters)
 {
     return(" ( " + GetExpressionDispatch(expression.Children[0], ref parameters) + " ) ");
 }
Exemplo n.º 14
0
 public void Visit(ParenthesesExpression expression)
 {
     expression.Expression.Accept(this);
 }