Commit Graph

674 Commits

Author SHA1 Message Date
Tristan B. Velloza Kildaire cfabfdb8c4 Updated test case (works as expected) 2021-06-15 16:23:59 +02:00
Tristan B. Velloza Kildaire 9c445f2a52 Disabled uneeded code 2021-06-15 16:23:53 +02:00
Tristan B. Velloza Kildaire 193c2b285a WIP:Object initialization 2021-06-15 15:45:31 +02:00
Tristan B. Velloza Kildaire 52a00f4583 Updated test case 2021-06-15 15:35:24 +02:00
Tristan B. Velloza Kildaire f76b228114 Implemented use of Object initilization node 2021-06-15 15:35:20 +02:00
Tristan B. Velloza Kildaire 3c6270be04 Added Object initilization node 2021-06-15 15:35:12 +02:00
Tristan B. Velloza Kildaire 255f96511e WIP: Object initialization 2021-06-15 15:25:11 +02:00
Tristan B. Velloza Kildaire d6f15e2b86 Switched to using more specific DNodes for Variables 2021-06-15 15:04:15 +02:00
Tristan B. Velloza Kildaire 12b0a99d47 Added markings to show static 2021-06-15 15:04:05 +02:00
Tristan B. Velloza Kildaire 0b36d4304e Updated test case 2021-06-15 15:00:19 +02:00
Tristan B. Velloza Kildaire 548867fcb1 Added generic pooler using templating 2021-06-15 14:56:40 +02:00
Tristan B. Velloza Kildaire ba650f1ab7 Added ExpressionDNode 2021-06-15 14:48:44 +02:00
Tristan B. Velloza Kildaire c957845c66 Made `new` expression support more explicit to return a `NewExpression` with an embedded FunctionCall rather than a FunctionCall alone 2021-06-15 14:27:32 +02:00
Tristan B. Velloza Kildaire 8799ab9b85 FOund a parsing error that must be fixed to allow `new A().x` 2021-06-15 13:29:04 +02:00
Tristan B. Velloza Kildaire 8079167fa5 Going to refactor into this 2021-06-15 13:12:27 +02:00
Tristan B. Velloza Kildaire a2445607ba Reordered visitation marking of variable 2021-06-15 13:07:11 +02:00
Tristan B. Velloza Kildaire 758614b7fc Added Module Variable Delcration code 2021-06-15 13:05:26 +02:00
Tristan B. Velloza Kildaire 3548f1d5bb Removed undeeded prints 2021-06-15 12:54:05 +02:00
Tristan B. Velloza Kildaire 390a573b47 Use special ModuleVariableDeclaration DNode 2021-06-15 12:53:39 +02:00
Tristan B. Velloza Kildaire e8dfb61ab9 WIP: VariableNode base class 2021-06-15 12:44:43 +02:00
Tristan B. Velloza Kildaire 756b648420 Fixed segmentation fault 2021-06-15 12:44:37 +02:00
Tristan B. Velloza Kildaire 075c175d3e Implemented `getName()` temporarily to make tree print-out work 2021-06-15 11:25:04 +02:00
Tristan B. Velloza Kildaire 998a2dd577 Refactored into directory for class-related types 2021-06-15 11:23:22 +02:00
Tristan B. Velloza Kildaire b807718fad Make fields protected 2021-06-15 11:23:08 +02:00
Tristan B. Velloza Kildaire 350ff14586 WIP: Expression dependencies 2021-06-15 11:15:08 +02:00
Tristan B. Velloza Kildaire 2b2f119fdc Support for previous commit 2021-06-15 11:10:58 +02:00
Tristan B. Velloza Kildaire 8b1e1c1db5 Associate variable's and their assignment statements bidirectionally 2021-06-15 11:10:50 +02:00
Tristan B. Velloza Kildaire 750ec6605c WIP: Expression dependency generation 2021-06-15 10:51:40 +02:00
Tristan B. Velloza Kildaire 8e2f7032ad Added getters and setters for left-hand and right-hand expressions of BinaryOperatorExpression 2021-06-15 10:49:19 +02:00
Tristan B. Velloza Kildaire ad374fd7cd Added new test case 2021-06-15 10:48:09 +02:00
Tristan B. Velloza Kildaire c6d0d762e8 Store the left-hand and right-hand expressions for BinaryOperatorExpression 2021-06-15 10:48:01 +02:00
Tristan B. Kildaire c8ae0e7ae4 Back to where we were last night now 2021-06-09 21:14:48 +02:00
Tristan B. Kildaire f22df86e39 Damn I spent time making ascii art 2021-06-09 20:47:52 +02:00
Tristan B. Kildaire 54a1b8f247 Introduce new marking, `completed`, means that it has visited during psot-processing 2021-06-09 20:35:17 +02:00
Tristan B. Kildaire 687cf6c92c Fixed visitation loop detection algorithmn 2021-06-09 20:19:26 +02:00
Tristan B. Kildaire 1b5c783b75 If the class has not been visited then set it as such and return immediately 2021-06-09 20:10:47 +02:00
Tristan B. Kildaire 01684f785e Use `getType()` instead for resolving types 2021-06-09 20:07:39 +02:00
Tristan B. Kildaire 2ebf2c13cf Use `getType` instead 2021-06-09 20:07:23 +02:00
Tristan B. Kildaire 7cdd7bc57f Make variable declarations at the module-level that use class-types depend on their static initialization 2021-06-09 19:54:22 +02:00
Tristan B. Kildaire 3ba469c481 Re-enabled printing of dependency tree 2021-06-09 19:53:04 +02:00
Tristan B. Kildaire 8cdd414dab Only initialize the parent Container if it is of type Clazz 2021-06-09 19:52:32 +02:00
Tristan B. Kildaire 392fae8088 Debugging segmentation fault now 2021-06-09 19:51:39 +02:00
Tristan B. Kildaire 653495b324 Disabled code generation (for now) 2021-06-09 19:49:49 +02:00
Tristan B. Kildaire de6687de24 New direction
We need to do what we did with data structures for parsing for type checking (dependency checking).

We have pooling sorted now, but we must actually create our own initializer sub-types from DNode (non static vs static class init for example)
2021-06-09 19:45:57 +02:00
Tristan B. Kildaire 695354d4b6 Trashed old code 2021-06-09 18:22:07 +02:00
Tristan B. Kildaire cbaca17d96 I want to rework the whole thing 2021-06-09 18:20:50 +02:00
Tristan B. Kildaire 6d19bd9b44 TODO added 2021-06-09 17:44:21 +02:00
Tristan B. Kildaire 73f312e8a7 Updated test case 2021-06-09 13:10:48 +02:00
Tristan B. Kildaire 48c7e9c681 Trying to reduce duplicate code for variable declaration checking 2021-06-09 13:08:55 +02:00
Tristan B. Kildaire fb5de13895 Fixed bug whereby the semicolon after a `discard`'s expression was not expected and neither consumed 2021-06-09 12:57:43 +02:00