Examples of ArrayAccess


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

    if (hasTerminalNode(context, JavaParser.DOT)) {
      return processScopedExpression(context);
    }

    if (hasTerminalNode(context, JavaParser.LBRACK)) {
      ArrayAccess arrayAccess = createNode(context, ArrayAccess.class);

      if (context.getChildCount() > 0 && context.getChild(0) instanceof ExpressionContext) {
        ExpressionContext expressionContext = (ExpressionContext) context.getChild(0);
        arrayAccess.setArray(getAdapter(ExpressionAdapter.class).adapt(expressionContext));
      }

      if (context.getChildCount() > 2 && context.getChild(2) instanceof ExpressionContext) {
        ExpressionContext expressionContext = (ExpressionContext) context.getChild(2);
        arrayAccess.setIndex(getAdapter(ExpressionAdapter.class).adapt(expressionContext));
      }

      return arrayAccess;
    }
View Full Code Here

Examples of com.dragome.compiler.ast.ArrayAccess

      case Const.AALOAD:
      {

        Expression index= stack.pop();
        Expression arrayRef= stack.pop();
        ArrayAccess aa;
        aa= new ArrayAccess();
        aa.setTypeBinding(form.getResultType());
        aa.setArray(arrayRef);
        aa.setIndex(index);

        instruction= aa;
        break;
      }

      case Const.BASTORE:

      case Const.CASTORE:

      case Const.SASTORE:

      case Const.IASTORE:

      case Const.LASTORE:

      case Const.FASTORE:

      case Const.DASTORE:

      case Const.AASTORE:
      {

        Expression value= stack.pop();
        Expression index= stack.pop();
        Expression arrayRef= stack.pop();
        if (arrayRef instanceof ArrayCreation)
        {
          ArrayCreation ac= (ArrayCreation) arrayRef;
          if (ac.getInitializer() == null)
          {
            ac.setInitializer(new ArrayInitializer());
          }
          ac.getInitializer().getExpressions().add(value);
          instruction= new NoOperation();
          break;
        }
        Assignment a= new Assignment(Assignment.Operator.ASSIGN);

        ArrayAccess aa;
        aa= new ArrayAccess();
        aa.setArray(arrayRef);
        aa.setIndex(index);

        a.setLeftHandSide(aa);
        a.setRightHandSide(value);
        instruction= a;
        break;
View Full Code Here

Examples of lombok.ast.ArrayAccess

      crea.astInitializer(init);
      set(node, crea);
    }
   
    @Override public void visitIndexed(JCArrayAccess node) {
      ArrayAccess aa = new ArrayAccess();
      aa.rawIndexExpression(toTree(node.getIndex()));
      aa.rawOperand(toTree(node.getExpression()));
      set(node, aa);
    }
View Full Code Here

Examples of lombok.ast.ArrayAccess

  public Node createSelectOperation(Node identifier) {
    return posify(new Select().astIdentifier(createIdentifierIfNeeded(identifier, currentPos())));
  }
 
  public Node createArrayAccessOperation(Node indexExpression) {
    return posify(new ArrayAccess().rawIndexExpression(indexExpression));
  }
View Full Code Here

Examples of org.candle.decompiler.intermediate.expression.ArrayAccess

    if(assignment == null) {
      return;
    }
   
    Expression right = assignment.getRightHandSide();
    ArrayAccess apr = (ArrayAccess)assignment.getLeftHandSide();
    assignments.put(toInteger(apr.getIndex()), right);
   
    List<AbstractIntermediate> predecessor = Graphs.predecessorListOf(igc.getGraph(), current);
   
    if(predecessor.size() != 1) {
      return;
View Full Code Here

Examples of org.candle.decompiler.intermediate.expression.ArrayAccess

   
    if(!(assignment.getLeftHandSide() instanceof ArrayAccess)) {
      return null;
    }
   
    ArrayAccess apr = (ArrayAccess)assignment.getLeftHandSide();
    if(!(apr.getArray() instanceof NewConstantArrayInstance)) {
      return null;
    }
   
    return assignment;
  }
View Full Code Here

Examples of org.candle.decompiler.intermediate.expression.ArrayAccess

  protected void processArrayStore() {
    Expression value = context.getExpressions().pop();
    Expression arrayPosition = context.getExpressions().pop();
    Expression arrayReference = context.getExpressions().pop();
   
    ArrayAccess arrayPositionReference = new ArrayAccess(context.getCurrentInstruction(), arrayReference, arrayPosition);
    Assignment assignment = new Assignment(context.getCurrentInstruction(), arrayPositionReference, value);
   
    StatementIntermediate si = new StatementIntermediate(context.getCurrentInstruction(), assignment);
   
    //add it to the intermediate lines.
View Full Code Here

Examples of org.candle.decompiler.intermediate.expression.ArrayAccess

    Expression arrayPosition = context.getExpressions().pop();
    Expression arrayObject = context.getExpressions().pop();
   
    //now, we just need to create the array reference.
   
    ArrayAccess apr = new ArrayAccess(context.getCurrentInstruction(), arrayObject, arrayPosition);
    context.getExpressions().push(apr);
  }
View Full Code Here

Examples of org.candle.decompiler.intermediate.expression.ArrayAccess

  private boolean firstMatchesGeneratedVariables(StatementIntermediate first, GeneratedVariable generatedArrayRef, GeneratedVariable generatedArrayIterator) {
    Declaration childDeclaration = (Declaration)first.getExpression();
    Expression right = childDeclaration.getAssignment().getRightHandSide();
   
    if(right instanceof ArrayAccess) {
      ArrayAccess apr = (ArrayAccess)right;
     
      if(!(apr.getIndex() instanceof Variable)) {
        return false;
      }
      if(!(apr.getArray() instanceof Variable)) {
        return false;
      }
     
      //cast both to variable. check the variables match the name and type of the ones found above.
      Variable arrayPosition = (Variable)apr.getArray();
      Variable arrayRef = (Variable)apr.getArray();
     
      if(!StringUtils.equals(arrayPosition.getName(), generatedArrayIterator.getName())) {
        return false;
      }
     
View Full Code Here

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

     * @param aname
     * @param iname
     * @return array access
     */
    public ArrayAccessBuilder buildArrayIndexAccess(String aname, String iname) {
        ArrayAccess access = getAST().newArrayAccess();
        access.setArray(getAST().newSimpleName(aname));
        access.setIndex(getAST().newSimpleName(iname));
        return new ArrayAccessBuilder(this, access);
    }
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.