// Automatically generated code.  Edit at your own risk!
// Generated by bali2jak v2002.09.03.



public class DoWhileStm extends DoStatement {

    final public static int ARG_LENGTH = 2 ;
    final public static int TOK_LENGTH = 5 ;

    public Expression getExpression () {
        
        return (Expression) arg [1] ;
    }

    public Statement getStatement () {
        
        return (Statement) arg [0] ;
    }

    public boolean[] printorder () {
        
        return new boolean[] {true, false, true, true, false, true, true} ;
    }

    public DoWhileStm setParms
    (AstToken tok0, Statement arg0, AstToken tok1, AstToken tok2, Expression arg1, AstToken tok3, AstToken tok4)
    {
        
        arg = new AstNode [ARG_LENGTH] ;
        tok = new AstTokenInterface [TOK_LENGTH] ;
        
        tok [0] = tok0 ;            /* "do" */
        arg [0] = arg0 ;            /* Statement */
        tok [1] = tok1 ;            /* "while" */
        tok [2] = tok2 ;            /* "(" */
        arg [1] = arg1 ;            /* Expression */
        tok [3] = tok3 ;            /* ")" */
        tok [4] = tok4 ;            /* ";" */
        
        InitChildren () ;
        return (DoWhileStm) this ;
    }

}
