package edu.parser.QL.nodes.statement; import edu.parser.QL.QLVisitor; import edu.parser.QL.nodes.AbstractNode; import edu.parser.QL.nodes.expression.Expression; import java.util.List; import java.util.Optional; /** * Created by Steven Kok on 17/02/2015. */ public class IfStatement extends Statement { private final Expression expression; private final List<Statement> statements; private final Optional<ElseClause> elseClause; public IfStatement(Expression expression, List<Statement> statements, Optional<ElseClause> elseClause) { this.expression = expression; this.statements = statements; this.elseClause = elseClause; } public Optional<ElseClause> getElseClause() { return elseClause; } public Expression getExpression() { return expression; } public List<Statement> getStatements() { return statements; } @Override public AbstractNode accept(QLVisitor QLVisitor) { return QLVisitor.visit(this); } }