package net.sourceforge.phpdt.internal.compiler.ast;
/**
+ * This is a if statement.
+ * if (condition)
+ * statement
+ * (elseif statement)*
+ * else statement
* @author Matthieu Casanova
*/
public class IfStatement extends Statement {
public Expression condition;
+ public Statement statement;
public ElseIf[] elseifs;
public Else els;
+ /**
+ * Create a new If statement.
+ * @param condition the condition
+ * @param statement a statement or a block of statements
+ * @param elseifs the elseifs
+ * @param els the else (or null)
+ * @param sourceStart the starting position
+ * @param sourceEnd the ending offset
+ */
public IfStatement(Expression condition,
+ Statement statement,
ElseIf[] elseifs,
Else els,
int sourceStart,
int sourceEnd) {
super(sourceStart, sourceEnd);
this.condition = condition;
+ this.statement = statement;
this.elseifs = elseifs;
this.els = els;
}
final StringBuffer buff = new StringBuffer(tabString(tab));
buff.append("if (");
buff.append(condition.toStringExpression()).append(") ");
+ buff.append(statement.toString(tab+1));
for (int i = 0; i < elseifs.length; i++) {
- ElseIf elseif = elseifs[i];
- buff.append(elseif.toString(tab+1));
- buff.append('\n');
+ buff.append(elseifs[i].toString(tab+1));
+ buff.append("\n");
}
if (els != null) {
buff.append(els.toString(tab+1));