Add an else to the case statement
This commit is contained in:
@ -461,8 +461,10 @@ namespace elna::boot
|
||||
|
||||
public:
|
||||
const std::vector<switch_case> cases;
|
||||
const std::vector<statement *> *alternative;
|
||||
|
||||
case_statement(const struct position position, expression *condition, std::vector<switch_case>&& cases);
|
||||
case_statement(const struct position position, expression *condition,
|
||||
std::vector<switch_case>&& cases, std::vector<statement *> *alternative = nullptr);
|
||||
void accept(parser_visitor *visitor) override;
|
||||
expression& condition();
|
||||
};
|
||||
@ -592,10 +594,10 @@ namespace elna::boot
|
||||
class if_statement : public statement
|
||||
{
|
||||
conditional_statements *m_body;
|
||||
std::vector<statement *> *m_alternative;
|
||||
|
||||
public:
|
||||
std::vector<conditional_statements *> branches;
|
||||
const std::vector<statement *> *alternative;
|
||||
|
||||
if_statement(const struct position position, conditional_statements *body,
|
||||
std::vector<statement *> *alternative = nullptr);
|
||||
@ -603,7 +605,6 @@ namespace elna::boot
|
||||
virtual if_statement *is_if() override;
|
||||
|
||||
conditional_statements& body();
|
||||
std::vector<statement *> *alternative();
|
||||
|
||||
virtual ~if_statement() override;
|
||||
};
|
||||
|
Reference in New Issue
Block a user