5d86161b63
Add Directive interface
2024-02-13 16:03:07 -05:00
73b4643162
Add metadata entities
2024-02-13 13:29:30 -05:00
cb3e5b6bfb
Add entity.FormatType()
2024-02-12 14:34:49 -05:00
0832a948bf
Completed doc comments in entity
2024-02-09 01:11:24 -05:00
b6cc02fcb8
Change interface prefix from ? to ~
...
? will eventually be used in place of * to denote an optional
pointer, and ~ already means "approximation", which works well for
a polymorphic data structure.
2024-02-08 04:10:11 -05:00
fa252e59ab
Loll oops
2024-02-08 02:22:57 -05:00
93c9f42aab
Unify entity.Statement and entity.Expression
2024-02-08 02:22:19 -05:00
f04bf32ce2
Relaxed unneeded rules on AST
2024-02-08 02:19:00 -05:00
50fc1d16de
Parse bit and value casts
2024-02-08 01:54:29 -05:00
abbc8e52bf
Parse length operations
2024-02-08 01:33:55 -05:00
90a505540e
Parse slice operations
2024-02-08 01:29:16 -05:00
92b15eef6c
Struct literals print correctly
2024-02-08 00:56:43 -05:00
d7d2d90b20
Added string constructor for entity.Operator
2024-02-08 00:29:24 -05:00
7b6c1b8398
What crack was I smoking when I made LiteralNil.Value
2024-02-07 15:46:42 -05:00
6cab43332e
Remove entity.Boolean because I have overcome my haters
2024-02-07 15:41:48 -05:00
673d43a0c8
De-ambiguify interface and struct type syntax
2024-02-07 03:02:16 -05:00
fc9b3bbfa5
Un-participle-ify entity.Access
2024-02-06 02:27:09 -05:00
f7636ab410
Remove entity participle struct tags
2024-02-05 15:17:59 -05:00
decc5939a1
Remove entity dependency on participle
2024-02-05 15:16:11 -05:00
8dedae5cb9
Nitpick
2024-01-27 08:26:46 +00:00
7035648396
Change restricted access modifier to tilde (~)
2024-01-27 07:42:13 +00:00
cd688c91af
Added nil (zero initializer) literals
2023-12-21 23:33:38 -05:00
a9ff511496
Generator can produce link names
2023-12-20 03:05:27 -05:00
88bc83f277
Added module referencing to parser
2023-12-19 15:21:10 -05:00
0645e2b43a
Add access specifiers and link names to parser
2023-12-17 11:23:42 -05:00
6bcbd6aff9
Made the type checker a tad more robust
2023-12-15 13:23:37 -05:00
414f4595dc
Changed my mind about brackets on break and return statements
2023-12-12 19:51:17 -05:00
30c346c6b7
Generator alloca's variables when they are defined
2023-12-07 02:48:27 -05:00
ffe873a3e4
String literals can be assigned to strings now
2023-12-02 22:45:22 -05:00
7b139199c0
Ditch brackets around break and return statements
2023-12-01 01:53:33 -05:00
4c07b9f206
Add length to analyzer and parser
2023-11-30 02:05:32 -05:00
e5be4dba02
Added string literal to analyzer
2023-11-26 17:27:31 -05:00
d0245e4375
Added string literal to parser
2023-11-26 05:16:40 -05:00
e71b9951e9
Fixed scope OverVariables stopping immediately
2023-11-26 04:01:55 -05:00
72941e1ab4
Slight modifications to analyzer
2023-11-21 15:04:01 -05:00
605fd24228
Pass all analyzer tests
2023-11-04 17:59:04 -04:00
a2e22d1154
Fix goofy bugs
2023-10-31 21:52:47 -04:00
dd9f866165
Can now assign array directly to slice
2023-10-31 01:46:18 -04:00
d435a1b1be
Removed Void as a concept
2023-10-29 14:47:28 -04:00
ab262207db
Fix entity string conversion
2023-10-29 14:34:21 -04:00
359441d5fa
Analyze return statement
2023-10-29 14:28:51 -04:00
8751cc7b89
Analyze break statements
2023-10-29 02:59:45 -04:00
68951a3af4
Analyze all the literals
2023-10-28 03:24:17 -04:00
4da8ecd25f
More expressions (wip)
2023-10-26 10:43:50 -04:00
0bcc5e7d46
Location expressions
2023-10-24 21:54:59 -04:00
9a7087ab14
Added analysis for numerous types of expressions
2023-10-24 18:29:33 -04:00
ee8eabcfc4
I forgor
2023-10-24 01:34:58 -04:00
5ac046d5b1
Function call analysis
2023-10-20 13:48:05 -04:00
99c09d9b07
Added basic equality checks to types
2023-10-19 21:53:19 -04:00
fc97c3ed49
WIP expression analysis type checking
2023-10-19 19:13:55 -04:00
75c18763a9
New syntax for method calls
...
This will free up the '::' token for namespace/module access. Exciting!
2023-10-19 17:19:23 -04:00
a80492420e
Implement custom lexer FINALLY
2023-10-18 00:48:35 -04:00
decefce142
hngnggg i forgor to commit
...
- implemented scope management
- finished function signature analyzing
- added method analyzing
- had to restructure type analysis slightly to do this
2023-10-17 03:11:11 -04:00
8b4244e3cb
Booleans are now literals
2023-10-09 00:24:48 -04:00
6f40b6216b
Testing ALL the types
2023-10-07 02:27:49 -04:00
07bf334689
the ansalyzer
2023-10-07 01:18:05 -04:00
3570caeb2e
Implemented untested type description analysis
2023-10-05 18:27:40 -04:00
1359901847
Even more tests
2023-10-05 16:57:32 -04:00
a77b281979
Updated design document
2023-10-03 18:38:15 -04:00
97bbf048c3
Replace cast and bitcast with ~ and ~~ respectively
2023-10-03 18:20:04 -04:00
212c03c81b
Methods are now declared with :: instead of .
2023-09-26 17:19:23 -04:00
c9e7390f06
Added scope information to some entities
2023-09-23 00:48:50 -04:00
57e41e48ff
Ok now slices actually
2023-09-22 00:58:06 -04:00
53c0bb7171
Added slicing operation
2023-09-21 17:26:40 -04:00
5b0e9e53cc
Added slices because of how extremely important they are
2023-09-21 17:04:53 -04:00