|
09b4b4e688
|
Interpreter - Refactored getter/setter support as a trait on an instance ref
|
2023-01-11 19:44:52 +01:00 |
|
|
8b19f546c8
|
Parser - Removed handling of 'return' special cases
* This has been implemented in the resolver so it's pretty pointless
to do it twice
|
2023-01-11 15:33:41 +01:00 |
|
|
ee53c2fba4
|
Resolver - Improved handling of 'return'
|
2023-01-11 15:33:21 +01:00 |
|
|
57a5a62300
|
Resolver - Check return statements in the resolver
|
2023-01-11 15:30:24 +01:00 |
|
|
406400bf71
|
Resolver - Don't reset scope types while parsing function blocks
|
2023-01-11 15:29:48 +01:00 |
|
|
aa48973e23
|
Resolver - Support and detection of the initializer scope type
|
2023-01-11 15:19:21 +01:00 |
|
|
0a581f042d
|
Resolver - Keep track of the container scope's type
|
2023-01-11 15:15:40 +01:00 |
|
|
47c4136c25
|
Interpreter - Refactored instance to avoid runtime borrom problems
|
2023-01-11 08:21:48 +01:00 |
|
|
c4f0f0f721
|
Interpreter - Fixed special case for init
|
2023-01-11 08:03:42 +01:00 |
|
|
3af544a78e
|
Interpreter - Initialize support in instances
* Doesn't work at this point
|
2023-01-11 07:50:02 +01:00 |
|
|
783a2e3dd0
|
Interpreter - Special case for initializer methods
|
2023-01-11 07:46:13 +01:00 |
|
|
98eef78583
|
Clippity clip clippy
|
2023-01-11 07:21:50 +01:00 |
|
|
ecc8f2ec8b
|
Removed various bits of unused code
|
2023-01-11 07:20:29 +01:00 |
|
|
16151bd326
|
Actually made "this" work in the interpreter
|
2023-01-10 09:03:57 +01:00 |
|
|
3e4aea0d78
|
Interpreter - Working bound methods
|
2023-01-09 11:19:42 +01:00 |
|
|
542bc56aad
|
Interpreter - Initial implementation of bound methods
|
2023-01-09 10:50:24 +01:00 |
|
|
a2986a1342
|
Resolver - Class definitions create a scope that contains "this"
|
2023-01-09 10:48:50 +01:00 |
|
|
e46b399399
|
Interpreter - Handle references to "this"
|
2023-01-09 08:03:41 +01:00 |
|
|
f9359cfe03
|
Interpreter - Refactored lookup_var() to use VariableExpr
|
2023-01-09 08:02:59 +01:00 |
|
|
ea4717c8bd
|
Resolver - Handle the "this" keyword
|
2023-01-09 07:59:55 +01:00 |
|
|
1f4aecd099
|
Resolver - Refactored resolve_use() to use VariableExpr
|
2023-01-09 07:59:04 +01:00 |
|
|
7e7c8ffc37
|
Parser - Handle the "this" keyword
|
2023-01-09 07:56:58 +01:00 |
|
|
c9f74cdc55
|
AST - "this" keyword
|
2023-01-09 07:53:56 +01:00 |
|
|
dbd0f6d20f
|
Interpreter - Handle AST refactorings
|
2023-01-09 07:51:40 +01:00 |
|
|
b12c7a05cf
|
Resolver - Handle AST refactorings
|
2023-01-09 07:49:19 +01:00 |
|
|
0c588942bf
|
Parser - Handle AST refactorings
|
2023-01-09 07:46:42 +01:00 |
|
|
bb2765d057
|
AST - Refactored variable reference expressions
|
2023-01-09 07:43:45 +01:00 |
|
|
75387c5ac4
|
AST - Refactored binary expressions
|
2023-01-09 07:40:28 +01:00 |
|
|
58c1bbcf68
|
Interpreter - Access methods through get expressions
|
2023-01-09 07:32:50 +01:00 |
|
|
e371217df0
|
Interpreter - Initialize methods when creating classes
|
2023-01-09 07:32:29 +01:00 |
|
|
392aaa630d
|
Resolver - Apply resolution to methods
|
2023-01-09 07:22:15 +01:00 |
|
|
16bf06c7a1
|
Resolver - Added some spacing
|
2023-01-09 07:11:18 +01:00 |
|
|
5cfe6d3e5c
|
Interpreter - Set instance properties
|
2023-01-09 07:10:10 +01:00 |
|
|
7634354122
|
Resolver - Set expressions
|
2023-01-09 07:02:52 +01:00 |
|
|
a52e386e8d
|
Parser - Set expressions
|
2023-01-09 07:00:52 +01:00 |
|
|
a5172e103b
|
Dumper - Set expressions
|
2023-01-09 06:56:47 +01:00 |
|
|
2bdf675090
|
Dumper - Get expressions
|
2023-01-09 06:55:41 +01:00 |
|
|
082acaaa1e
|
AST - Set expressions
|
2023-01-09 06:54:03 +01:00 |
|
|
2b4ecf6d2c
|
Made Clippy slightly less unhappy
|
2023-01-08 15:27:19 +01:00 |
|
|
1c5efe7e62
|
AST - Replaced dumper
* Rewrote as a kind of "pretty" printer
* It isn't actually pretty but it does restore Lox code from the AST.
|
2023-01-08 15:25:27 +01:00 |
|
|
728c7a3857
|
Interpreter - Renamed class submodule to classes
|
2023-01-08 12:02:45 +01:00 |
|
|
5062e6c348
|
Interpreter - Instance fields
|
2023-01-08 12:01:05 +01:00 |
|
|
f8bcc2d703
|
Interpreter - Evaluate get expressions
|
2023-01-08 12:00:50 +01:00 |
|
|
20aa06ac25
|
Parser - Fixed parameter parsing bug
|
2023-01-08 12:00:01 +01:00 |
|
|
e963868aa7
|
Interpreter - Value helper methods to run code against instances
|
2023-01-08 11:57:56 +01:00 |
|
|
d07dbb2e89
|
Resolver - Get expressions
|
2023-01-08 11:32:09 +01:00 |
|
|
334dc99752
|
Parser - Some refactoring of code that handles identifiers
|
2023-01-08 11:31:02 +01:00 |
|
|
e006a12c80
|
Parser - Support for get expressions
|
2023-01-08 11:22:49 +01:00 |
|
|
616565bb0d
|
Token - Helper methods to better handle identifiers
|
2023-01-08 11:22:14 +01:00 |
|
|
0cebffbf9b
|
AST - Getter expression
|
2023-01-08 11:04:32 +01:00 |
|