Commit Graph

42 Commits (7d5f5997120c1b91d6e7b5306c8888bd475c041f)

Author SHA1 Message Date
venko 7d5f599712 Lots of bug fixes for id lookup 2021-05-29 18:27:30 -07:00
venko e3fc2826ea Reimplements identifier lookup to work over the AST 2021-05-27 16:17:25 -07:00
venko ece20a99b5 Fixes printing bug for string literals 2021-05-27 14:10:44 -07:00
venko a69516b917 Fixes typo and removes unused variable. 2021-05-27 11:53:01 -07:00
venko 4f8f4fbe9e Adds back FIXME comment 2021-05-26 14:53:08 -07:00
venko ddd5b2f027 Implements generic recursion over AST nodes 2021-05-26 14:43:51 -07:00
venko eb24206e13 Imlements custom to generic type conversion 2021-05-24 19:20:23 -07:00
venko 79d4715799 Moves generic type identifiers to be the first children of a function in the id-tree 2021-05-23 17:04:50 -07:00
venko d48995716e Adds handling for generic AST nodes in PrintNode and SyntaxKindString 2021-05-23 16:58:59 -07:00
cosmonaut d641f713de progress on generics 2021-05-21 19:52:13 -07:00
cosmonaut 8a3920918c generic function lookup 2021-05-20 13:18:57 -07:00
cosmonaut 0d94e89045 skeleton of generic function lookup 2021-05-19 18:09:33 -07:00
cosmonaut 24bcef6d87 initial generics stuff 2021-05-19 15:45:07 -07:00
cosmonaut 473b706ad9 clang-format config 2021-05-16 00:42:37 -07:00
cosmonaut 876e8deb6e codegen fixes 2021-05-16 00:23:52 -07:00
venko 459a1dd3b7 Refactors identcheck for new AST. Fixes newline bugs in PrintNode. 2021-05-15 19:00:46 -07:00
cosmonaut abc82f381e refactor AST to use nameless union instead of child array 2021-05-15 15:34:15 -07:00
cosmonaut 41bf2bece8 some minor style revisions 2021-05-14 11:53:09 -07:00
venko f441e5bede Possibly implements full type annotation of the AST 2021-05-12 21:54:09 -07:00
venko 32541d4794 Fixes bugs in LookupId 2021-05-08 15:12:53 -07:00
venko aa2449f7df Implements identifier lookup. 2021-05-08 14:51:15 -07:00
venko 252dc9b87f Disambiguates scopes where ordering matters vs ones where it doesn't 2021-05-08 12:09:25 -07:00
venko 743828450c Explicitly sets IdNode type tags on creation. 2021-05-07 17:51:23 -07:00
venko 5ab3cc533d Adds type tags to the id-tree 2021-05-07 17:49:35 -07:00
venko e2bca66dc4 Adds null-guard to PrintIdTree 2021-05-07 14:36:37 -07:00
venko fddacae487 tiny refactor 2021-05-07 14:19:56 -07:00
venko 71ba1f9454 Minimizes memory footprint of id-tree search 2021-05-07 14:07:57 -07:00
venko 565d815deb Adds error message to FindId, extra test code in main 2021-05-07 13:35:28 -07:00
venko 8f86392cf3 Makes id-tree doubly linked. Fixes id-tree search. 2021-05-07 13:22:51 -07:00
venko 27587d1fb0 Implements identifier trees for for-loops and conditional branching 2021-05-06 20:00:08 -07:00
venko aeb36f9540 Adds type for validating identifiers 2021-05-06 17:17:24 -07:00
venko 6ec5479db1 Moves strdup function to utility file 2021-05-06 17:15:17 -07:00
cosmonaut cbeb8d3ce2 printing 2021-04-30 12:17:44 -07:00
cosmonaut 3b43d44f35 add type specification to iterator variable 2021-04-30 00:50:35 -07:00
cosmonaut 62f42e47b9 initial for loop range implementation 2021-04-29 23:49:35 -07:00
cosmonaut c728dd6b8c if-else chains 2021-04-29 15:26:30 -07:00
cosmonaut 708d4de0ae add else blocks 2021-04-29 13:59:00 -07:00
cosmonaut 7ca87d6b13 parser sequence refactor 2021-04-29 12:42:51 -07:00
cosmonaut a320086038 add if statement 2021-04-28 21:25:25 -07:00
cosmonaut 9a97b73c7c rename compiler to codegen + handle file not found 2021-04-28 16:10:17 -07:00
cosmonaut 49183bf1d3 restructure build process 2021-04-28 16:01:48 -07:00
cosmonaut 272c809c69 input option parsing 2021-04-28 15:21:51 -07:00