Commit Graph

42 Commits

Author SHA1 Message Date
6fd3f5a2e6 Make it possible to use an enum in an expression (i.e. selecting one of the enum values: Foo.A) 2023-03-15 19:14:04 +01:00
7af815042b WIP: Add enum support 2023-03-15 15:56:42 +01:00
Dennis Kaiser
4f1d009626 Merge branch '24-structs' into 'master'
Resolve "Structs"

Closes #24

See merge request mkais001/klang!17
2020-03-09 14:43:17 +01:00
ac6cb22e45 delete print statement 2020-03-09 14:19:43 +01:00
31330db676 replace DOT with PERIOD 2020-03-09 12:53:26 +01:00
ed4c901c6c add field assignment to statements 2020-03-09 12:48:31 +01:00
64634a0d4d move destructor call from expressions to statements 2020-03-09 12:47:02 +01:00
31460860d5 add a destructor call to the grammar 2020-03-09 12:47:02 +01:00
9d83e5425d add a null literal 2020-03-09 12:46:13 +01:00
317c2c52ca add constructor call expression to the grammar 2020-03-09 12:45:16 +01:00
304891adb8 add struct field access expression 2020-03-09 12:43:25 +01:00
3e8e30e0da add struct definitions as a direct child of program 2020-03-09 12:40:59 +01:00
Marvin Kaiser
0316a7d4bf 25: Start adding Float Type 2020-03-03 20:45:55 +01:00
d3a4af0b8c add lexer rules for line and block comments 2020-02-04 11:02:34 +01:00
Marvin Kaiser
34253a70ba Implement operator precedence with and without parenthesis 2020-02-03 16:35:29 +01:00
0aed4ee893 my initial short for typechecking, still very unifinished tho 2020-01-21 00:21:54 +01:00
Marvin Kaiser
d27df13ec1 added boolean operators 2020-01-20 16:01:25 +01:00
1186bb4550 add bool literal 2020-01-20 15:26:55 +01:00
Marvin Kaiser
be43cc9a77 implement for loops 2020-01-14 11:04:31 +01:00
Marvin Kaiser
1980e1ba8c Move the SCOL for var_assigns and var_decl to the statement rule 2020-01-14 10:39:46 +01:00
Marvin Kaiser
e52ad061f9 Implemented do while loops 2020-01-13 16:43:38 +01:00
Marvin Kaiser
bd4ae1d605 Added while loop 2020-01-13 16:08:44 +01:00
Marvin Kaiser
079cdf4969 Implemented != expression 2019-12-20 09:09:01 +01:00
Marvin Kaiser
c5419b85c7 Extend grammar: added boolean expressions 2019-12-20 08:40:17 +01:00
dc7dce48d9 add variable deklaration 2019-12-16 22:40:33 +01:00
629f67b39c make expressions nestable 2019-12-16 21:44:37 +01:00
c5dc08c1e0 add return statement to the grammar 2019-11-25 14:44:14 +01:00
2af9f369cf implement variable assignment 2019-11-18 18:54:24 +01:00
b38369b7a5 implemented variables and function call evaluation 2019-11-18 18:02:10 +01:00
Marvin Kaiser
13caee0667 Added function call and function definition 2019-11-18 16:39:12 +01:00
38d34a7cbc implement else if nesting 2019-11-11 22:27:27 +01:00
ea6bde3305 enforce parantheses around the conditional expression of an if statement 2019-11-11 16:22:43 +01:00
42ae4c88fb require at least one statement in block 2019-11-11 11:40:17 +01:00
16b8efaa8b delete build artifacts 2019-11-11 11:37:58 +01:00
c26cb6ddf5 add context analysis and custom visitors 2019-11-04 17:35:15 +01:00
Marvin Kaiser
8ad114107a removed unnecessary comment 2019-10-29 10:33:24 +01:00
Marvin Kaiser
dfefee8a71 removed "then" from if statement 2019-10-29 10:32:17 +01:00
Marvin Kaiser
d43fa90bc3 Added if statement 2019-10-29 10:30:18 +01:00
Marvin Kaiser
64c41122d0 Rewrote grammar, implemented two visitors 2019-10-29 09:51:43 +01:00
a6c732e99c update grammar definition to the example from the lecture 2019-10-28 21:51:50 +01:00
ec89390e4a remove obsolete files 2019-10-28 21:50:27 +01:00
Marvin Kaiser
0a9d702198 Initial commit 2019-10-28 15:55:18 +01:00