Commit Graph

78 Commits

Author SHA1 Message Date
Sasha Koshka 94967d25e2 Removed let phrases
We don't need them anymore
2022-09-29 02:37:14 -04:00
Sasha Koshka 290f8799cf Parser parses function outputs 2022-09-29 02:29:35 -04:00
Sasha Koshka 6c02e45e2e Untested type section parsing yay 2022-09-29 02:01:31 -04:00
Sasha Koshka 58af5f3f15 Put type members back where they were 2022-09-28 11:07:39 -04:00
Sasha Koshka 8dd90e1c6b Implemented list parsing 2022-09-27 18:03:27 -04:00
Sasha Koshka 26f887dfcc tree-tostring is free of compiler errors 2022-09-27 16:13:02 -04:00
Sasha Koshka cd9de16338 Removed previous code from type-notation.go 2022-09-27 15:48:47 -04:00
Sasha Koshka 4228d2b4cf Operators can no longer be arguments 2022-09-27 14:48:05 -04:00
Sasha Koshka c4101dcd33 More tree changes 2022-09-27 14:17:03 -04:00
Sasha Koshka edd4b39642 Parser tree changes 2022-09-26 18:28:21 -04:00
Sasha Koshka 6040980003 SectionKind has been retired 2022-09-21 21:25:48 -04:00
Sasha Koshka 85f97189ac Cleaned up phrase parsing a bit 2022-09-17 12:30:56 -04:00
Sasha Koshka 49eb7f9b9d Removed FuncOutput from the tree 2022-09-17 12:12:04 -04:00
Sasha Koshka 558542127d Among impostor 2022-09-14 15:16:56 -04:00
Sasha Koshka 1457067c55 Added method to parse <this> 2022-09-13 18:16:18 -04:00
Sasha Koshka 767bf81b85 Lobbotomized the codebase 2022-09-13 16:31:08 -04:00
Sasha Koshka ba3825287d Removed the horrendus "ArgumentKindObjectInitializationValues" name 2022-09-13 11:09:41 -04:00
Sasha Koshka dbd0eb570d Did some ToString stuff 2022-09-12 15:27:29 -04:00
Sasha Koshka 3e9ff7dcd6 Altered syntax tree accordingly
🦀🦀🦀 Object sections are gone 🦀🦀🦀 and members are now stored
in the type specifier.
2022-09-11 16:15:02 -04:00
Sasha Koshka 7e972e2132 Syntax tree now stores map of require names -> full paths 2022-09-07 17:12:46 -04:00
Sasha Koshka 596deaf0c3 i forgor 2022-09-07 15:50:37 -04:00
Sasha Koshka 2295e3bd32 Data sections can now be marked as external 2022-09-05 14:09:47 -04:00
Sasha Koshka ef9d518032 Renamed returnsTo to returnees 2022-09-05 11:49:19 -04:00
Sasha Koshka 98a88b71be Updated tree and accessor semantics 2022-09-05 11:20:23 -04:00
Sasha Koshka e06de0ad9a same thing forf phrases and blocks 2022-09-05 02:04:37 -04:00
Sasha Koshka bc4b2bd33c Added accessors for ObjtSection and EnumSection 2022-09-05 01:09:29 -04:00
Sasha Koshka 89834ac390 The syntax tree is no longer passed by reference 2022-09-04 22:30:14 -04:00
Sasha Koshka 7af575e865 Added TypeKindVariableArray 2022-09-04 22:27:06 -04:00
Sasha Koshka 57b98636d0 Added accessors for Identifier and Type 2022-09-04 22:19:19 -04:00
Sasha Koshka 691df94ef4 Removed many cringe pass-by-references 2022-09-04 19:55:47 -04:00
Sasha Koshka f3c72f8f30 The section kind specific maps are gone
I've REPLACED IT with the unified sections map. Interfaces, baby!
2022-09-04 19:30:59 -04:00
Sasha Koshka 9269161138 Tree returns a section interface when given a name 2022-09-04 17:13:49 -04:00
Sasha Koshka d930e72c0c Added more methods to the section interface 2022-09-04 14:04:48 -04:00
Sasha Koshka ded0ce58ec Created Section interface 2022-09-04 14:02:48 -04:00
Sasha Koshka 899f4815bc Did the same thing with default values 2022-09-04 03:31:35 -04:00
Sasha Koshka e0a04e68e3 Did the same thing but with permissions 2022-09-03 23:03:09 -04:00
Sasha Koshka ef375810fb Did the same thing with type specifiers 2022-09-03 22:56:08 -04:00
Sasha Koshka 8e74216430 Names are now composed from a nameable struct 2022-09-03 22:33:34 -04:00
Sasha Koshka 729ae78eae Location is now included in structs via composition 2022-09-03 22:17:05 -04:00
Sasha Koshka 1274eeb400 Parser now uses new equal signs 2022-09-03 20:32:27 -04:00
Sasha Koshka ac548bf438 `loc` will be the referencing "operator" 2022-09-03 16:24:13 -04:00
Sasha Koshka 977ecba78c The entirety of phrase command parsing is in one function
This function is also responsible for setting a kind attribute on
the phrase. This will make the semantic analyzer's job easier.
2022-09-03 15:49:47 -04:00
Sasha Koshka bcd44828dc Blocks under control flow phrases now parse
... except for switch cases. This will be added momentarily.
2022-09-03 15:22:18 -04:00
Sasha Koshka 257d22b6f7 Parser no longer skips token after an argument level phrase 2022-09-03 12:54:41 -04:00
Sasha Koshka ac7074a819 Added support for "external" keyword 2022-09-02 01:25:22 -04:00
Sasha Koshka 7deacff330 AST supports function output default values 2022-09-01 17:13:40 -04:00
Sasha Koshka 65c213f1f3 Fixed import paths 2022-08-30 01:11:10 -04:00
Sasha Koshka e630ec6f04 Added function section to tree 2022-08-25 12:02:43 -04:00
Sasha Koshka 067bf2f4df Altered tree so that object members are stored in an array 2022-08-24 20:09:57 -04:00
Sasha Koshka c470997887 Did the same thing to interfaces 2022-08-24 18:57:07 -04:00