Commit Graph

75 Commits

Author SHA1 Message Date
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
greg
2c34ab52c4 Make this test conform to new if syntax 2019-10-11 09:13:09 -07:00
greg
ddea470ba8 Parsing tests pass, eval ones fail 2019-10-10 18:17:59 -07:00
greg
2ed84de641 Introduce bare else clause in if exprs
With a non-passing test
2019-10-09 01:50:32 -07:00
greg
a48bb61eb3 Get rid of this test
need to rethink how if-expressions should work
2019-10-05 16:41:51 -07:00
greg
f02d7cb924 Add test for failing if expression 2019-09-28 17:42:22 -07:00
greg
c427646e75 Change type alias 2019-09-28 02:42:18 -07:00
greg
a054de56a2 Import statement syntax 2019-09-21 02:30:28 -07:00
greg
06026604cc Fix test 2019-09-20 12:14:15 -07:00
greg
fd3922d866 Get rid of Meta from tests 2019-09-20 10:10:57 -07:00