Commit Graph

375 Commits (d9566698d231f0c228b030ea280147e4670ef484)

Author SHA1 Message Date
Tristan B. V. Kildaire bc8ed82e4f Removed unused code 2021-04-01 15:24:46 +02:00
Tristan B. V. Kildaire 75872f8384 Added test to test lexer changes 2021-04-01 14:57:19 +02:00
Tristan B. V. Kildaire dd8e5e8b0b Added `;` as splitter 2021-04-01 14:56:42 +02:00
Tristan B. V. Kildaire ede134e9d8 No need for specificity here, only in unit tests 2021-04-01 14:52:52 +02:00
Tristan B. V. Kildaire 49b9ac29d1 Added some code for future use to print stack trace 2021-04-01 14:52:15 +02:00
Tristan B. V. Kildaire 5a541bdb21 Format errors nicely 2021-04-01 14:46:02 +02:00
Tristan B. V. Kildaire df6433bae2 Added exception handling 2021-04-01 14:43:49 +02:00
Tristan B. V. Kildaire ab36f9200d WIP 2021-04-01 14:38:20 +02:00
Tristan B. V. Kildaire 8a32272660 WIP 2021-04-01 14:38:11 +02:00
Tristan B. V. Kildaire 21cef84983 Added some test cases 2021-04-01 14:30:33 +02:00
Tristan B. V. Kildaire 92228ab583 WIP: Switch to using exceptions 2021-04-01 14:28:33 +02:00
Tristan B. V. Kildaire 889ea9155f Removed cruft 2021-04-01 14:11:29 +02:00
Tristan B. V. Kildaire a18252ce21 For testing, renabled class inheritance name checker to make sure grand resolver `resolveBest` still worksed 2021-04-01 14:10:59 +02:00
Tristan B. V. Kildaire 8c25ffa29f Removing old cruft 2021-04-01 14:09:30 +02:00
Tristan B. V. Kildaire a349a81922 Cleaned up 2021-04-01 15:59:44 +02:00
Tristan B. V. Kildaire 2ca005a45f No idea why that check was there 2021-04-01 15:59:33 +02:00
Tristan B. V. Kildaire 87e4cd2fe6 Added support for variable assignments 2021-04-01 15:49:02 +02:00
Tristan B. V. Kildaire 07c0eb3718 Cleaned up 2021-04-01 15:32:05 +02:00
Tristan B. V. Kildaire 5c9fd0a229 Added documentation explaining how `checkContainer(Container)` works 2021-04-01 15:30:02 +02:00
Tristan B. V. Kildaire 8567d8baeb Added recursive container check in `checkCotainer(COntainer)` on condition that current Entity being processed is a Container-typed Entity 2021-04-01 15:26:17 +02:00
Tristan B. V. Kildaire da8cb92f8a Updated test cases 2021-04-01 15:21:15 +02:00
Tristan B. V. Kildaire c3a1a93b3a First-level precedence-based name collision detection 2021-04-01 15:21:10 +02:00
Tristan B. V. Kildaire 265f00f03b Made error messages more verbose 2021-04-01 08:56:06 +02:00
Tristan B. V. Kildaire d781a92554 More verbose error messages 2021-04-01 08:51:55 +02:00
Tristan B. V. Kildaire 4f32fb9619 Only use grand resolver here now that it is implemented 2021-04-01 08:47:44 +02:00
Tristan B. V. Kildaire c5f45e6a36 Added top down (using module name) resolution to the grand resolver 2021-03-31 21:15:28 +02:00
Tristan B. V. Kildaire ab5ee58055 Removed useless check 2021-03-31 21:08:41 +02:00
Tristan B. V. Kildaire 91231ddebd Removed redundant check 2021-03-31 20:57:29 +02:00
Tristan B. V. Kildaire 0e748f15c1 Refactored name resolution code 2021-03-31 12:54:34 +02:00
Tristan B. V. Kildaire 0fda46c857 Added TODO 2021-03-31 10:34:24 +02:00
Tristan B. V. Kildaire 290028d203 Updated test case 2021-03-31 10:33:59 +02:00
Tristan B. V. Kildaire bcd9ea608a Updated test case 2021-03-31 10:30:25 +02:00
Tristan B. V. Kildaire bd3a1bfd70 Grand resolver completed (one bug remains for parentless niggas)
Updated test cases to test this (I have tested erroneous as well and they work well)
2021-03-30 23:22:37 +02:00
Tristan B. V. Kildaire c3faf06914 Bottom up and top-down name resolution are working 2021-03-30 22:04:11 +02:00
Tristan B. V. Kildaire 2c54333259 Don't allow classes to be defined with same name as their container (direct) 2021-03-30 21:54:27 +02:00
Tristan B. V. Kildaire 9b84fc3428 Allow shadowing of types 2021-03-30 21:36:35 +02:00
Tristan B. V. Kildaire e7905aace2 Made class name constraints good. You can have your duplicate names nested but not at same level 2021-03-30 21:29:57 +02:00
Tristan B. V. Kildaire 16435c204e Epic class inheritance name resolution 2021-03-30 21:07:04 +02:00
Tristan B. V. Kildaire 28bc6c140e WIP 2021-03-30 20:05:16 +02:00
Tristan B. V. Kildaire ec5d70f02c WIP: Class definining 2021-03-30 18:51:32 +02:00
Tristan B. V. Kildaire 5f6c9b5f57 Cleaned up variable declaring
Also declared variables when assignment is completed
2021-03-30 18:02:13 +02:00
Tristan B. V. Kildaire 0445534cda Refactored symbols 2021-03-30 17:35:16 +02:00
Tristan B. V. Kildaire 6649804d4e Refactoring
Removed uneeded type 'Symbol'
2021-03-30 17:31:37 +02:00
Tristan B. Kildaire f693d71a8a Allowed function calls to have multiple arguments passed to them 2021-03-30 16:25:26 +02:00
Tristan B. Kildaire 4610a2ba7b WIP 2021-03-30 16:20:47 +02:00
Tristan B. Kildaire 4ddf3b8710 Seems to work 2021-03-30 10:09:55 +02:00
Tristan B. Kildaire 10a9b8d470 Deuplicate identifier deteciton works 2021-03-30 09:56:37 +02:00
Tristan B. Kildaire 06ba886328 WIP 2021-03-29 22:27:48 +02:00
Tristan B. Kildaire 74fb188d82 Now all containers set their children Statements to be parented to them (container a reference to them) 2021-03-29 22:20:47 +02:00
Tristan B. Kildaire afcf1609b6 Added `parenTo(Statement)` to `Statement` which will allow us to link stuff toghether in containers 2021-03-29 21:48:59 +02:00