Commit Graph

84 Commits

Author SHA1 Message Date
Greg Shuflin 54b33282ef More declarations 2021-11-07 03:13:35 -08:00
Greg Shuflin d46f40bc0f type declarations 2021-11-07 01:30:26 -08:00
Greg Shuflin 02fc76c8fc Fix issue with block formatting 2021-11-06 20:34:35 -07:00
Greg Shuflin 87141fcca3 for expressions 2021-11-05 12:52:41 -07:00
Greg Shuflin 4ec2585d25 Paramaterize struct-related functions 2021-11-05 03:18:28 -07:00
Greg Shuflin 8aa306746a While-parsing passing
Albeit with a lot of code duplication
2021-11-05 03:08:25 -07:00
Greg Shuflin 4f3ef5c850 Fix prefix-expr bug 2021-11-05 02:46:58 -07:00
Greg Shuflin 76b1e9c0dc More types of expr 2021-11-05 02:43:34 -07:00
Greg Shuflin 6a318257d6 If exprs, patterns 2021-11-04 21:11:19 -07:00
Greg Shuflin 8e19b7c39d Precedence 2021-11-03 23:57:22 -07:00
Greg Shuflin 54eb8252a9 Add operator rule 2021-11-03 22:27:14 -07:00
Greg Shuflin 6cbe562241 More work 2021-11-03 20:48:31 -07:00
Greg Shuflin 88b39b5561 Started porting extant tests to new peg parser 2021-11-03 20:19:55 -07:00
Greg Shuflin 359f274f33 More trying out peg 2021-11-03 18:01:23 -07:00
Greg Shuflin 4c1ee0a34e Trying out peg 2021-11-03 16:27:42 -07:00
Greg Shuflin 8336211a4b Disallow functions with more than 255 arguments 2021-11-02 21:03:48 -07:00
Greg Shuflin 3e16070602 Make modules a type of declaration 2021-11-02 18:34:15 -07:00
Greg Shuflin e40782739d Use annotations to mark builtins 2021-11-02 16:56:12 -07:00
Greg Shuflin 9de1b4ea33 Nest annotated declarations within the annotation ast node 2021-11-02 14:43:32 -07:00
Greg Shuflin 4c6a93302d Support Record patterns 2021-11-01 13:48:04 -07:00
Greg Shuflin cd1bb91555 Add control flow types 2021-11-01 00:25:52 -07:00
Greg Shuflin 87024b79ba Clippy 2021-10-31 02:44:33 -07:00
Greg Shuflin 803a836887 Implement immediate records 2021-10-31 02:30:38 -07:00
Greg Shuflin 663e99df23 Rename back to test.rs 2021-10-31 02:05:39 -07:00
Greg Shuflin 81bfe22974 Move rest of parse tests over to new format 2021-10-31 02:04:28 -07:00
Greg Shuflin f0e4b50c99 Implement Access AST node
For name.value lookups
2021-10-30 21:22:15 -07:00
Greg Shuflin 1c6545fb74 Fix index/call parsing 2021-10-30 20:49:29 -07:00
Greg Shuflin 46fe03b43f Move over some lambda tests 2021-10-30 20:27:16 -07:00
Greg Shuflin 53112c9f9d Fix parser bug 2021-10-30 17:32:17 -07:00
Greg Shuflin e7308485df Rewrite many parser tests
Also introduces pretty print crate for parsing tests.
2021-10-30 17:11:45 -07:00
Greg Shuflin d65233240a Unify u32-based identifiers into common code
Create a new type Id<T> paramaterized by whatever specific class of IDs
is relevant to a domain; create stores and macros to support this; and
repace the existing Id types.
2021-10-27 00:36:23 -07:00
Greg Shuflin 851fd9885f Make a distinct Block type 2021-10-26 14:05:54 -07:00
Greg Shuflin a03f570266 More tuple pattern work 2021-10-26 00:39:24 -07:00
Greg Shuflin b342213826 Add ids to type Variants 2021-10-21 20:00:26 -07:00
Greg Shuflin b4f765167b Redesign Variant struct 2021-10-21 19:53:50 -07:00
Greg Shuflin 9b5c3629c0 Update schala-lang to edition 2021 2021-10-21 12:37:29 -07:00
Greg Shuflin 248af74ec0 Add parsing for annotations 2021-10-21 11:32:14 -07:00
Greg Shuflin 60ddac9774 Rest of clippy lints 2021-10-19 22:29:41 -07:00
Greg Shuflin ae6a79077f more clippy lints 2021-10-19 22:24:27 -07:00
Greg Shuflin c9c65b050c Clippy for parsing 2021-10-19 21:55:51 -07:00
Greg Shuflin c697c929a4 Use default for ItemId 2021-10-18 17:39:20 -07:00
Greg Shuflin 2fe4109296 Change where Builtin is calculated from operators 2021-10-16 20:21:08 -07:00
Greg Shuflin f8924cf65f Remove bx! macro from crate root 2021-10-14 17:42:04 -07:00
Greg Shuflin eeb4e743d2 Move submodules into .mod files in directories 2021-10-14 16:06:41 -07:00
Greg Shuflin 3ed5f1d16c Refactor SourceMap
Move it into the SymbolTable entirely, make the parser not care about
it.
2021-10-14 06:28:52 -07:00
greg efc8497235 Rearchitect parser
To ensure that the prelude gets parsed with the same ItemId context as
normal REPL input
2019-10-25 01:49:15 -07:00
greg 11a9a60a34 Rejiggering some things with the SourceMap pointer in Parser 2019-10-23 14:47:18 -07:00
greg 5bb1a245c4 Have Parser accept SourceMap reference 2019-10-23 14:47:18 -07:00
greg bf59e6cc63 Just import all of AST in parse tests 2019-10-22 03:15:41 -07:00
greg c560c29b2d Start to add module syntax 2019-10-22 03:15:14 -07:00