package uva.ql.ast.statements; import java.util.List; import uva.ql.ast.CodeLines; import uva.ql.ast.expressions.Expression; import uva.ql.ast.visitor.StatementVisitor; public class IfStatement extends Statement { private Expression expression; private List<Statement> statement; public IfStatement(Expression _expression, List<Statement> _statement, CodeLines _codeLines){ super(_codeLines); this.expression = _expression; this.statement = _statement; } public Expression getIfStatementExpression(){ return this.expression; } public List<Statement> getStatements(){ return this.statement; } public boolean hasBooleanCondition() { return expression.isBoolean(); } @Override public <T> T accept(StatementVisitor<T> visitor) { return visitor.visitIfStatement(this); } @Override public CodeLines getCodeLine() { return this.codeLines; } @Override public String toString(){ return "IfStatement(" + this.expression.toString() + "," + this.statement.toString() + ")"; } }