Commit Graph

23 Commits

Author SHA1 Message Date
Danila Fedorin 3b79b5751a Add true and false keywords to the parser. 2018-08-10 16:06:30 -07:00
Danila Fedorin 39dd07b134 Add pseudo-refcounting to tree creation. 2018-06-12 23:34:18 -07:00
Danila Fedorin 5d3130d39d Format the code with clang-format. 2018-04-21 14:09:01 -07:00
Danila Fedorin 94f1a11f15 Replace C++-style comments with C90 compatible ones. 2018-03-18 19:21:09 -07:00
Danila Fedorin 27acfb0be7 Register reserved operators as tokens. 2018-03-16 23:09:11 -07:00
Danila Fedorin 429c0bde3e Add syntax sugar for let. 2018-03-14 13:30:20 -07:00
Danila Fedorin bb61dbcd54 Add support for the return keyword. 2018-03-08 21:31:24 -08:00
Danila Fedorin 2d26e45e90 Add function node parsing. 2018-03-08 21:10:05 -08:00
Danila Fedorin 2487cdebe0 Add the ability to parse types.
This ability is not integrated with the rest of the parser - in fact, the grammar for things like function declarations (where type declarations are necessary) is not yet determined.
2018-03-06 16:47:11 -08:00
Danila Fedorin ac8e2ff418 Implement the do-while loop. 2018-02-27 12:30:37 -08:00
Danila Fedorin 976b6d1b1a Add code to parse while loops. 2018-02-27 11:57:45 -08:00
Danila Fedorin e5c2570bac Implement parsing if expressions. 2018-02-20 16:38:02 -08:00
Danila Fedorin 8c8e84b10d Fix bug causing spaces and newlines to remain in source. 2018-02-20 16:37:37 -08:00
Danila Fedorin a3ce8fbd9c Tone down the current token list, in favor of adding them later. 2018-02-17 13:32:55 -08:00
Danila Fedorin 74034c7b76 Rename header files. 2018-02-11 22:32:42 -08:00
Danila Fedorin e5351c17a2 Fix code to stick to proper naming convention. 2018-02-11 21:22:01 -08:00
Danila Fedorin 3254f5741f Add cast to libab_result in ll_foreach call. 2018-02-10 17:21:45 -08:00
Danila Fedorin d79d001013 Make sure matches come with correct types. 2018-02-10 17:21:32 -08:00
Danila Fedorin 0e4d82ad44 Fix bad expression for numbers. 2018-02-10 17:21:16 -08:00
Danila Fedorin 0ff71a9389 Implement lexing code. 2018-02-10 17:13:59 -08:00
Danila Fedorin 065f2fa4b9 Use the new error code conversion code. 2018-02-10 16:02:22 -08:00
Danila Fedorin 2db840288d Implement the initialization and freeing of lexer. 2018-02-10 14:21:04 -08:00
Danila Fedorin 10652048ab Begin working on the lexer. 2018-02-10 13:57:16 -08:00