Implements return statement
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2019-06-07 15:23:13 +02:00
parent f143e526ab
commit f4a3918947
12 changed files with 145 additions and 18 deletions

View File

@@ -15,7 +15,8 @@ enum class ParsedStatementKind{
Block,
Expression,
Assignment,
FunctionDeclaration
FunctionDeclaration,
Return
};
class ParsedStatement {
@@ -166,4 +167,24 @@ public:
}
};
class ParsedReturnStatement : public ParsedStatement{
ParsedExpression* _expression;
public:
ParsedReturnStatement(ParsedExpression* expression, unsigned int start, unsigned int length) : ParsedStatement(start, length){
_expression = expression;
}
~ParsedReturnStatement() final{
delete _expression;
}
ParsedStatementKind GetKind() final{
return ParsedStatementKind ::Return;
}
ParsedExpression* GetExpression(){
return _expression;
}
};
#endif //PORYGONLANG_PARSEDSTATEMENT_HPP