public void visitForLoop(ForStatement forLoop) { forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
@Override public void visitForLoop(ForStatement stat) { stat.getCollectionExpression().visit(this); stat.setLoopBlock(replace(stat.getLoopBlock())); }
public void visitForLoop(final ForStatement forLoop) { assertStatementAuthorized(forLoop); forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
@Override public void visitForLoop(ForStatement stat) { stat.setCollectionExpression(replaceExpr(stat.getCollectionExpression())); stat.setLoopBlock(replace(stat.getLoopBlock())); }
forLoop.getLoopBlock().visit(new VariableExpressionTypeMemoizer(varOrigType));
loop.getLoopBlock().visit(controller.getAcg());
private void writeEnumerationBasedForEachLoop( CompileStack compileStack, OperandStack operandStack, MethodVisitor mv, ForStatement loop, Expression collectionExpression, ClassNode collectionType, Parameter loopVariable) { // Declare the loop counter. BytecodeVariable variable = compileStack.defineVariable(loopVariable, false); collectionExpression.visit(controller.getAcg()); // Then get the iterator and generate the loop control int enumIdx = compileStack.defineTemporaryVariable("$enum", ENUMERATION_CLASSNODE, true); Label continueLabel = compileStack.getContinueLabel(); Label breakLabel = compileStack.getBreakLabel(); mv.visitLabel(continueLabel); mv.visitVarInsn(ALOAD, enumIdx); ENUMERATION_HASMORE_METHOD.call(mv); // note: ifeq tests for ==0, a boolean is 0 if it is false mv.visitJumpInsn(IFEQ, breakLabel); mv.visitVarInsn(ALOAD, enumIdx); ENUMERATION_NEXT_METHOD.call(mv); operandStack.push(ClassHelper.OBJECT_TYPE); operandStack.storeVar(variable); // Generate the loop body loop.getLoopBlock().visit(controller.getAcg()); mv.visitJumpInsn(GOTO, continueLabel); mv.visitLabel(breakLabel); }
loop.getLoopBlock().visit(acg);
loop.getLoopBlock().visit(controller.getAcg());
loop.getLoopBlock().visit(controller.getAcg());
@Override public void visitForLoop(ForStatement forLoop) { children.add(forLoop.getCollectionExpression()); children.add(forLoop.getLoopBlock()); }
public void visitForLoop(ForStatement forLoop) { forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
public void visitForLoop(ForStatement forLoop) { forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
public void visitForLoop(ForStatement forLoop) { forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
public void visitForLoop(ForStatement forLoop) { forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
public void visitForLoop(final ForStatement forLoop) { assertStatementAuthorized(forLoop); forLoop.getCollectionExpression().visit(this); forLoop.getLoopBlock().visit(this); }
@Override public void visitForLoop(ForStatement stat) { stat.getCollectionExpression().visit(this); stat.setLoopBlock(replace(stat.getLoopBlock())); }
@Override public void visitForLoop(ForStatement stat) { stat.setCollectionExpression(replaceExpr(stat.getCollectionExpression())); stat.setLoopBlock(replace(stat.getLoopBlock())); }
@Override public void run() { literal(forLoop.getStatementLabel()); visit(loop.getExpressions()); visitWithSafepoint(forLoop.getLoopBlock()); } });
@Override public void run() { loc(forLoop); literal(forLoop.getStatementLabel()); literal(forLoop.getVariableType()); literal(forLoop.getVariable().getName()); visit(forLoop.getCollectionExpression()); visitWithSafepoint(forLoop.getLoopBlock()); } });