Examples of PrefixExpression


Examples of com.bacoder.parser.java.api.PrefixExpression

    if (context.getChildCount() == 2
        && context.getChild(0) instanceof TerminalNode
        && PREFIX_OPERATOR_MAP.containsKey(
            ((TerminalNode) context.getChild(0)).getSymbol().getType())) {
      PrefixExpression prefixExpression = createNode(context, PrefixExpression.class);

      prefixExpression.setOperator(
          PREFIX_OPERATOR_MAP.get(((TerminalNode) context.getChild(0)).getSymbol().getType()));

      ExpressionContext expressionContext = getChild(context, ExpressionContext.class);
      if (expressionContext != null) {
        prefixExpression.setExpression(
            getAdapter(ExpressionAdapter.class).adapt(expressionContext));
      }

      return prefixExpression;
    }
View Full Code Here

Examples of com.dragome.compiler.ast.PrefixExpression

    return binOp;
  }

  private PrefixExpression createPrefix(PrefixExpression.Operator op, ASTNode operand, Type type)
  {
    PrefixExpression pe= new PrefixExpression();
    pe.setOperator(op);
    pe.setTypeBinding(type);
    pe.setOperand(operand);
    return pe;
  }
View Full Code Here

Examples of com.dragome.compiler.ast.PrefixExpression

    tempDecls= theTempDecls;
  }

  public static Expression negate(Expression expr)
  {
    PrefixExpression pe= new PrefixExpression();
    pe.setOperator(PrefixExpression.NOT);
    pe.setOperand(expr);
    return pe;
  }
View Full Code Here

Examples of com.dragome.compiler.ast.PrefixExpression

  public static Expression simplifyBooleanExpression(Expression expr, boolean negate)
  {
    if (expr instanceof PrefixExpression)
    {
      PrefixExpression pe= (PrefixExpression) expr;
      if (pe.getOperator() != PrefixExpression.NOT)
        return expr;
      return simplifyBooleanExpression((Expression) pe.getOperand(), !negate);
    }

    if (expr instanceof InfixExpression && expr.getTypeBinding() == Type.BOOLEAN)
    {
      InfixExpression in= (InfixExpression) expr;
      InfixExpression.Operator op= in.getOperator();
      if (negate)
      {
        op= op.getComplement();
        if (op != InfixExpression.Operator.CONDITIONAL_AND && op != InfixExpression.Operator.CONDITIONAL_OR)
          negate= false;
      }
      InfixExpression out= new InfixExpression(op);
      out.widen(in);
      out.setOperands(simplifyBooleanExpression(in.getLeftOperand(), negate), simplifyBooleanExpression(in.getRightOperand(), negate));
      return out;
    }

    if (negate)
    {
      PrefixExpression pe= new PrefixExpression();
      pe.setOperator(PrefixExpression.NOT);
      pe.setOperand(expr);
      return pe;
    }

    return expr;
  }
View Full Code Here

Examples of com.dragome.compiler.ast.PrefixExpression

    Expression replacement= null;

    PStarExpression.Operator operator= getOp(infixExpr);
    if (operator != null)
    {
      PrefixExpression p= new PrefixExpression();
      p.setOperand((Expression) fa1);
      p.setOperator(operator);
      replacement= p;
    }
    else
    {
      InfixExpression.Operator op= infixExpr.getOperator();
View Full Code Here

Examples of com.google.dart.engine.ast.PrefixExpression

        // let it affect the propagated type when it would result in a loss
        // of precision.
        overrideExpression(is.getExpression(), is.getType().getType(), false);
      }
    } else if (condition instanceof PrefixExpression) {
      PrefixExpression prefix = (PrefixExpression) condition;
      if (prefix.getOperator().getType() == TokenType.BANG) {
        propagateTrueState(prefix.getOperand());
      }
    } else if (condition instanceof ParenthesizedExpression) {
      propagateFalseState(((ParenthesizedExpression) condition).getExpression());
    }
  }
View Full Code Here

Examples of com.google.dart.engine.ast.PrefixExpression

        // let it affect the propagated type when it would result in a loss
        // of precision.
        overrideExpression(is.getExpression(), is.getType().getType(), false);
      }
    } else if (condition instanceof PrefixExpression) {
      PrefixExpression prefix = (PrefixExpression) condition;
      if (prefix.getOperator().getType() == TokenType.BANG) {
        propagateFalseState(prefix.getOperand());
      }
    } else if (condition instanceof ParenthesizedExpression) {
      propagateTrueState(((ParenthesizedExpression) condition).getExpression());
    }
  }
View Full Code Here

Examples of com.stuffwithstuff.bantam.expressions.PrefixExpression

    // lower precedence when parsing the right-hand side. This will let a
    // parselet with the same precedence appear on the right, which will then
    // take *this* parselet's result as its left-hand argument.
    Expression right = parser.parseExpression(mPrecedence);
   
    return new PrefixExpression(token.getType(), right);
  }
View Full Code Here

Examples of org.aspectj.org.eclipse.jdt.internal.compiler.ast.PrefixExpression

      this.scribe.space();
    }
    Expression expression = unaryExpression.expression;

    if (expression instanceof PrefixExpression) {
      PrefixExpression prefixExpression = (PrefixExpression) expression;
      final int numberOfParensForExpression = (prefixExpression.bits & ASTNode.ParenthesizedMASK) >> ASTNode.ParenthesizedSHIFT;
      if (numberOfParensForExpression == 0) {
        switch(operatorValue) {
          case OperatorIds.PLUS:
            if (prefixExpression.operator == OperatorIds.PLUS) {
View Full Code Here

Examples of org.eclipse.jdt.core.dom.PrefixExpression

     *
     * @param name local variable or field name
     * @return expression
     */
    public PrefixExpressionBuilder buildPreincrement(String name) {
        PrefixExpression prefixex = getAST().newPrefixExpression();
        prefixex.setOperator(PrefixExpression.Operator.INCREMENT);
        return new PrefixExpressionBuilder(this, prefixex, getAST().newSimpleName(name));
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.