1 package polyglot.ast; 2 3 import java.util.*; 4 5 /** 6 * An immutable representation of a Java language <code>for</code> 7 * statement. Contains a statement to be executed and an expression 8 * to be tested indicating whether to reexecute the statement. 9 */ 10 public interface For extends Loop 11 { 12 /** List of initialization statements. 13 * @return A list of {@link polyglot.ast.ForInit ForInit}. 14 */ 15 List inits(); 16 17 /** Set the list of initialization statements. 18 * @param inits A list of {@link polyglot.ast.ForInit ForInit}. 19 */ 20 For inits(List inits); 21 22 /** Set the loop condition */ 23 For cond(Expr cond); 24 25 /** List of iterator expressions. 26 * @return A list of {@link polyglot.ast.ForUpdate ForUpdate}. 27 */ 28 List iters(); 29 30 /** Set the list of iterator expressions. 31 * @param iters A list of {@link polyglot.ast.ForUpdate ForUpdate}. 32 */ 33 For iters(List iters); 34 35 /** Set the loop body */ 36 For body(Stmt body); 37 } 38