6dfde851e5
Add cast phrase kind to parser
2022-10-18 23:32:15 -04:00
308996f059
Pointers and dynamic arrays are accounted for
2022-10-18 17:34:37 -04:00
ae0765b8f4
Add non-basic types to type section test case
2022-10-18 15:00:42 -04:00
2a1a48d9c5
Added basic test case for functions
2022-10-18 15:00:17 -04:00
3067b64f47
Altered semantics of fetchNodeFromIdentifier
2022-10-17 17:24:25 -04:00
fd9b1b3d11
wip
2022-10-17 15:41:26 -04:00
82c868f0c1
Test case for data sections
2022-10-17 01:48:37 -04:00
d6c8f57a81
Fixed type checking for string literals
...
The string builtin was incorrectly described, and
StringLiteral.canBePassedAs was checking the type actual instead of
the type points in the case of a reducible type.
2022-10-17 01:40:00 -04:00
a5b1385012
Some error message tweaks
2022-10-16 02:58:31 -04:00
f57637d7fc
Untested data section analysis
2022-10-16 02:53:37 -04:00
85bc6064f2
Object member values must be unique
2022-10-16 02:41:41 -04:00
098acafab1
No segfaulty
2022-10-16 02:07:25 -04:00
e885af997d
Store enum default value as argument, error on empty enum
2022-10-16 02:04:38 -04:00
500184c4ab
Enum values are auto-filled
2022-10-14 20:06:11 -04:00
2669a04857
Enum member names and values must be unique
2022-10-14 04:00:05 -04:00
dd29f69213
Added methods to check if a type is a number
2022-10-13 20:52:49 -04:00
12755d3f85
Enum analysis works
2022-10-13 18:48:38 -04:00
a1faf68cce
Untested enum analysis
2022-10-13 18:02:35 -04:00
c047a1438a
Restrict type sections to only inherit from other type sections
2022-10-13 16:33:32 -04:00
bfdca9ed16
Ok yeah there I fixed it
2022-10-13 16:11:12 -04:00
5463435fae
Untested rules for pulling types from other section kinds
2022-10-13 15:08:47 -04:00
d5687d7b0e
Uhhh
2022-10-13 13:30:11 -04:00
561e893327
Fixed test case to include new stuff
2022-10-13 02:26:05 -04:00
b8693af68b
Added some permission checks
2022-10-13 02:20:47 -04:00
ae50fab159
Small parser and ToString fixes
2022-10-13 00:18:32 -04:00
c290b3a3d7
Properly analyze member types
2022-10-13 00:01:49 -04:00
f817894b49
Added untested object member analysis
2022-10-12 23:25:21 -04:00
aaf268d0d1
Permissions of sections in other modules are respected
2022-10-12 15:48:22 -04:00
15fa122547
Parser no longer returns io.EOF when done parsing
2022-10-12 14:27:26 -04:00
ccc303d93c
Fixed meta test case to account for new relative path resolution
2022-10-12 14:23:09 -04:00
3662b2e298
Fixed type section parsing at EOF
2022-10-12 14:21:19 -04:00
b2fadd2fd3
Analyzer now no longer attempts to analyze an invalid tree
2022-10-12 13:14:53 -04:00
5d27befb6f
Fixed require paths
...
Previously, relative require paths would be resolved based on the
current working directory. They are now resolved based on the path
of the module.
2022-10-12 13:11:36 -04:00
150fc0dd4a
Error when something inherits a non-existent type
2022-10-12 13:06:59 -04:00
d4146ac6ce
Member analysis stub
2022-10-12 13:05:19 -04:00
83fbd38c75
Parser now sets type member location
2022-10-12 12:39:00 -04:00
32faab8b36
Added method to figure out if a type has a particular member
2022-10-12 02:57:18 -04:00
2a8476282e
Get rid of parser/default-values.go
2022-10-12 01:02:17 -04:00
3a9855fe88
Create translator stub
2022-10-12 00:58:58 -04:00
291aad8aad
Made documentation a bit better
2022-10-12 00:48:55 -04:00
1196bb3801
Privated lexingOperation
2022-10-12 00:00:34 -04:00
b92a3dcba3
Privated parsingOperation
2022-10-11 23:57:27 -04:00
89b432c6fd
Privated analysisOperation
2022-10-11 23:53:38 -04:00
1924892ab6
Fixed isSingular
2022-10-11 23:51:55 -04:00
7581541ff5
Added a locatable node trait
2022-10-11 18:31:37 -04:00
cd670d05c5
Made node traits file for semantic table nodes
2022-10-11 18:12:53 -04:00
67c94fb0e8
Special function for type checking and returning an error in one fell swop
2022-10-11 18:03:44 -04:00
d74f3a40dd
Errors encountered while analyzing are no longer ignored
2022-10-11 17:13:37 -04:00
41724a7e03
Added untested type mismatch error reporting thing
2022-10-11 17:04:18 -04:00
020833c4c6
Added isSingular to method (this is cool)
2022-10-11 16:20:12 -04:00