Commit Graph

73 Commits

Author SHA1 Message Date
82093865b0 wip 2022-10-19 13:27:48 -04:00
8b4fee50ab Literals call themselves literals instead of arg 2022-10-18 23:39:07 -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
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
32faab8b36 Added method to figure out if a type has a particular member 2022-10-12 02:57:18 -04:00
291aad8aad Made documentation a bit better 2022-10-12 00:48:55 -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
b8c57d5a56 StringLiteral.canBePassedAs allows variable arrays 2022-10-11 15:09:44 -04:00
6d5bb59712 Removed runes from analyzer ez 2022-10-04 17:25:05 -04:00
5c286cf955 Added some useful type checking thigns to literals 2022-10-04 16:19:26 -04:00
e2947eab8c Added permissions to analyzed sections 2022-10-01 17:21:17 -04:00
07540e0abc Added more stuff to type test case 2022-10-01 17:12:43 -04:00
0d53d7ad32 Table ToString outputs sections in alphabetical order 2022-09-30 03:46:29 -04:00
47cb89206a Analyzer now understands type section default values 2022-09-30 00:04:28 -04:00