Commit Graph

1012 Commits (master)
 

Author SHA1 Message Date
Tristan B. V. Kildaire 7296bea22a Updated test case 3 years ago
Tristan B. V. Kildaire e8915d7525 Fixed bug for name checking for function parameters 3 years ago
Tristan B. V. Kildaire 165d08f411 Removed debug panic 3 years ago
Tristan B. V. Kildaire c53397fa0d Fixed class name check in class definition 3 years ago
Tristan B. V. Kildaire 6a19e1c430 Fixed bug that made identifier checks not work 3 years ago
Tristan B. V. Kildaire b465d7e5b7 Fixed function calls 3 years ago
Tristan B. V. Kildaire 733bf117c0 Using `parseName` now for whenever a name appears, this is for function calls (not in expressions), typed declarations
We are not gonna do f(x)*f(g); Like no, only a function per statement. So we need not implement expression statements.

Name parsing is done seperately for parseExpression

Also added null check for Function.getVariables, as function calls don't yet get added and add 0 ptrs
3 years ago
Tristan B. V. Kildaire 467bdb6ff9 Added two functions which will be used for checking if we get an identifier that ia valid for being a path identifier and also one for normal identifiers. 3 years ago
Tristan B. V. Kildaire f92277e9e6 Removed IDENTIFIER 3 years ago
Tristan B. V. Kildaire 64d4a5a001 Updated parser test cases to fail on lexeing failure 3 years ago
Tristan B. V. Kildaire 40322e79f4 Fixed comment 3 years ago
Tristan B. V. Kildaire 20c9270739 Fixed bug in `isPathIdentifier` 3 years ago
Tristan B. V. Kildaire 25bfdfc24e Moved `isCharacterNumber` to utils.d 3 years ago
Tristan B. V. Kildaire 9c72756336 Added support for lexing `a.a`
Moved `isAlpha` to utils.d

Return false on lexing failures, true otherwise

Abort compilation and lexing failures
3 years ago
Tristan B. V. Kildaire 1abbf31f56 WIP: Support for `x.x.x` ideas 3 years ago
Tristan B. V. Kildaire 1af072de8c Added some more things 3 years ago
Tristan B. Kildaire 5761a454a8 Added name resolver
Sub-typed Clazz to Container

Updated test case
3 years ago
Tristan B. Kildaire 31fe91d947 Added statement from parseAccessor call 3 years ago
Tristan B. Kildaire e663a0792b In `parseBody()` after calling `parseClass` add the statement generated 3 years ago
Tristan B. Kildaire 4b9ca7588f TypedEntity now houses `type` field for use by Function as returnType and for use by Variable for `type` 3 years ago
Tristan B. Kildaire 5c8e30f1f5 Run type checker system
WIP: Resolution of names

Reworked type hierachy for Enity in relation to Function, Variable and Class

Updated test case
3 years ago
Tristan B. Kildaire 69afebbe04 Add parameters to function 3 years ago
Tristan B. V. Kildaire c02791d748 Return Entity with correct AccessorType set 3 years ago
Tristan B. V. Kildaire 293399722c WIP Accessor types 3 years ago
Tristan B. V. Kildaire f4550a77fc Return Statement from `parseAccessor()` 3 years ago
Tristan B. V. Kildaire b04060af80 Added getAllOf(Type) function 3 years ago
Tristan B. V. Kildaire f1d1f7d610 Wrong input type fixed in TypeChecker, now all functions, globals and class definitions can br printed out 3 years ago
Tristan B. V. Kildaire 779a76acb6 Implemented `getGlobals()` for Program which will return all Variable objects representing variables defined globally 3 years ago
Tristan B. V. Kildaire 87f7f458c8 Call type checker 3 years ago
Tristan B. V. Kildaire 3165f46416 Added type checker 3 years ago
Tristan B. V. Kildaire db4dd757eb Null was there because of bug, that should never happen though so I want to unmask any future bugs. 3 years ago
Tristan B. V. Kildaire a979d560c3 WIP: Symbol table additions 3 years ago
Tristan B. Kildaire 855be6f8f0 We will rather return Variable and modify in `parseAccessor`. And if not then we set to default 3 years ago
Tristan B. V. Kildaire bc2f92a9f0 Fixed unit tests 3 years ago
Tristan B. V. Kildaire 91e326d517 Added some temporary (going to change them later) unit tests for the parser 3 years ago
Tristan B. V. Kildaire 8fe1737433 Added support for accessors to nested classes, classes and variables
Updated test case respectively
3 years ago
Tristan B. V. Kildaire 7adf0aad12 Added check for accessor 3 years ago
Tristan B. V. Kildaire 5121e60092 Should have not been static
Added `PROCTECTED` symbol

Added `isAccessor` to check whether or not the given token is an accessor type
3 years ago
Tristan B. V. Kildaire 72616d4354 Updated test case to add missing module header 3 years ago
Tristan B. V. Kildaire 8bde36d586 Added requirement for having a module header at the beginning of each source file
Updated test cases accordingly
3 years ago
Tristan B. V. Kildaire 85ab9bde02 Added AcessorType enum and FunctionType enum 3 years ago
Tristan B. V. Kildaire f1b7a39751 Added some future data structure stubs for type checking 3 years ago
Tristan B. V. Kildaire fb818c3c86 Added TODO 3 years ago
Tristan B. V. Kildaire a004ff0233 WIP: Accessors for variable declarations, function definitions and class definitions 3 years ago
Tristan B. V. Kildaire c7b2d1663f Added TODO 3 years ago
Tristan B. V. Kildaire 8efeb9a3fb Fixed function argument parsing 3 years ago
Tristan B. V. Kildaire 4e91bdf6fd Updated test case for class parsing 3 years ago
Tristan B. V. Kildaire 9f6dd813c8 Added support for class inheritance parsing 3 years ago
Tristan B. Kildaire ceffcd7b9c Clean up 3 years ago
Tristan B. V. Kildaire bf1f6fafa7 Removed uneeded stuff 3 years ago