Package org.codehaus.groovy.ast.expr

Examples of org.codehaus.groovy.ast.expr.BinaryExpression


    private static void addFieldInit(Parameter p, FieldNode fn, BlockStatement block) {
        VariableExpression ve = new VariableExpression(p);
        FieldExpression fe = new FieldExpression(fn);
        block.addStatement(new ExpressionStatement(
                new BinaryExpression(
                        fe,
                        Token.newSymbol(Types.ASSIGN, -1, -1),
                        ve
                )
        ));
View Full Code Here


        ClassNode cNode = fNode.getDeclaringClass();
        BlockStatement body = new BlockStatement();
        Parameter[] params = new Parameter[1];
        params[0] = new Parameter(ClassHelper.int_TYPE, "index");
        body.addStatement(new ExpressionStatement(
                new BinaryExpression(
                        new VariableExpression(fNode.getName()),
                        INDEX,
                        new VariableExpression(params[0]))
        ));
        cNode.addMethod(makeName(fNode, "get"), getModifiers(fNode), componentType, params, null, body);
View Full Code Here

        BlockStatement body = new BlockStatement();
        Parameter[] params = new Parameter[2];
        params[0] = new Parameter(ClassHelper.int_TYPE, "index");
        params[1] = new Parameter(componentType, "value");
        body.addStatement(new ExpressionStatement(
                new BinaryExpression(
                        new BinaryExpression(
                                new VariableExpression(fNode.getName()),
                                INDEX,
                                new VariableExpression(params[0])),
                        ASSIGN,
                        new VariableExpression(params[1])
View Full Code Here

            ListIterator<Statement> litr = blockStatements.listIterator();
            while (litr.hasNext()) {
                Statement stmt = litr.next();
                if (stmt instanceof ExpressionStatement &&
                        ((ExpressionStatement) stmt).getExpression() instanceof BinaryExpression) {
                    BinaryExpression bExp = (BinaryExpression) ((ExpressionStatement) stmt).getExpression();
                    if (bExp.getLeftExpression() instanceof FieldExpression) {
                        FieldExpression fExp = (FieldExpression) bExp.getLeftExpression();
                        if (fExp.getFieldName().equals("$VALUES")) {
                            for (Statement tmpStmt : staticFieldStatements) {
                                litr.add(tmpStmt);
                            }
                        }
View Full Code Here

    return binaryOpertions.contains(token.getType());
  }

  static boolean isAtomExpression(Expression expression) {
    if (expression instanceof BinaryExpression) {
      BinaryExpression binaryExpression = (BinaryExpression) expression;
      return AstUtils.isArrayItemExpression(binaryExpression) && isAtomExpression(binaryExpression.getLeftExpression());
    } else {
      return !(expression instanceof NotExpression) && !(expression instanceof BitwiseNegationExpression);
    }
  }
View Full Code Here

  static boolean isValidRuleExpression(Expression expression) {
    if (expression instanceof BinaryExpression) {
      if (AstUtils.isArrayItemExpression(expression)) {
        return isValidRuleExpression(((BinaryExpression)expression).getLeftExpression());
      else {
        BinaryExpression binaryExpression = (BinaryExpression) expression;
        boolean isValidLeftExpression = isValidRuleExpression(binaryExpression.getLeftExpression());
        boolean isValidRightExpression = isValidRuleExpression(binaryExpression.getRightExpression());
        boolean isValidBinaryOperation = RuleExpressionVerifier.isValidRuleBinaryOperation(binaryExpression.getOperation());
        return isValidBinaryOperation && isValidLeftExpression && isValidRightExpression;
      }
    } else if (expression instanceof NotExpression) {
      return isValidRuleExpression(((NotExpression)expression).getExpression());
    } else if (expression instanceof BitwiseNegationExpression) {
View Full Code Here

    }
  }

  @Override
  public final void visitBinaryExpression(BinaryExpression expr) {
    BinaryExpression oldBinaryExpression = currBinaryExpr;
    currBinaryExpr = expr;
    try {
      doVisitBinaryExpression(expr);
    } finally {
      currBinaryExpr = oldBinaryExpression;
View Full Code Here

TOP

Related Classes of org.codehaus.groovy.ast.expr.BinaryExpression

Copyright © 2018 www.massapicom. 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.