Added support for destructors! This is done by making a void, parameterless member method called destruct which is called when a stack object falls out of scope, if it exists. This is implemented by the generator, in this case CGenerator.

This commit is contained in:
Nathan Braswell
2014-06-28 08:31:33 -07:00
parent 63d9ec66e1
commit 12f57f8ce8
6 changed files with 58 additions and 5 deletions

View File

@@ -61,7 +61,7 @@ for_loop = "for" WS "\(" WS statement WS boolean_expression WS ";" WS statement
return_statement = "return" | "return" WS boolean_expression ;
code_block = "{" WS statement_list WS "}" ;
code_block = "{" WS statement_list WS "}" | "{" WS "}" ;
statement_list = statement_list WS statement | statement ;
statement = if_statement | while_loop | for_loop | return_statement WS ";" | boolean_expression WS ";" | assignment_statement WS ";" | declaration_statement WS ";" | code_block | if_comp | simple_passthrough ;