1
1
mirror of https://github.com/github/semantic.git synced 2024-12-24 15:35:14 +03:00
Commit Graph

8334 Commits

Author SHA1 Message Date
Rob Rix
2d7c7fd1ee Define a function to compute the expectation for an assignment, which may involve its label. 2017-08-06 18:56:02 -04:00
Rob Rix
bd4e2666c8 🔥 a redundant Ix constraint on firstSet. 2017-08-06 18:56:02 -04:00
Rob Rix
c1596f942d Assignment errors can be strings. 2017-08-06 18:56:01 -04:00
Rob Rix
8e58a76a01 formatError takes Error String. 2017-08-06 18:56:01 -04:00
Rob Rix
60bafabf17 Move error formatting into Data.Error. 2017-08-06 18:56:01 -04:00
Rob Rix
d18ac5e0c6 Move the Error definition into Data.Error. 2017-08-06 18:56:01 -04:00
Rob Rix
add1d471c9 Stub in a module for Errors. 2017-08-06 18:56:01 -04:00
Rob Rix
55683ea810 Errors carry a full Span. 2017-08-06 18:56:01 -04:00
Rob Rix
261fb37c44 Syntax.Error holds the expected/actual fields. 2017-08-06 18:56:01 -04:00
Rob Rix
880d26078e Rename formatErrorWithOptions to formatError. 2017-08-06 18:56:01 -04:00
Rob Rix
8a7911313a Pass the position, expected, & actual fields to formatErrorWithOptions separately. 2017-08-06 18:56:01 -04:00
Rob Rix
eb1439ebbb showExpectation & showSymbols take Strings. 2017-08-06 18:56:01 -04:00
Rob Rix
b66312567b Define <?> using Label. 2017-08-06 18:56:01 -04:00
Rob Rix
b911f93a58 Define a Label assignment. 2017-08-06 18:56:01 -04:00
Rob Rix
3d9760d5d8 Sort the End case of Show to the top. 2017-08-06 18:56:01 -04:00
Rob Rix
a31e1ce086 Sort the End case to the top. 2017-08-06 18:56:01 -04:00
Rob Rix
3ab717f18f Add a callstack to notFollowedBy. 2017-08-06 18:56:01 -04:00
Rob Rix
99ac5d4486 Define notFollowedBy. 2017-08-06 18:56:01 -04:00
Rob Rix
fcc65d3a3e Allow if statements without elif/else clauses. 2017-08-06 18:56:00 -04:00
Rob Rix
3b5a19c832 Define eof as the End assignment. 2017-08-06 18:56:00 -04:00
Rob Rix
68257e5c3a Add an assignment which only matches at the end of input. 2017-08-06 18:56:00 -04:00
Rob Rix
4e2d29491c Stub in a Parsing instance for Assignment. 2017-08-06 18:53:51 -04:00
Rob Rix
8c9f6ab7fd Assign elif/else blocks correctly. 2017-08-06 18:53:48 -04:00
Rob Rix
6daf3d648b Move the MonadError instance up. 2017-08-06 18:53:44 -04:00
Rob Rix
5dfc165699 Re-export the Parsers module. 2017-08-06 18:53:41 -04:00
Rob Rix
302bef15ee 🔥 Data.Amb. 2017-08-06 18:53:29 -04:00
Rob Rix
1ca87c89e8 🔥 a redundant error handler. 2017-08-06 18:53:26 -04:00
Rob Rix
4a4d8ea9c5 🔥 the need for Bounded grammars for Alternative assignments. 2017-08-06 18:53:23 -04:00
Rob Rix
39e30c3d92 empty is Throw Nothing. 2017-08-06 18:53:19 -04:00
Rob Rix
c4c6c389aa Throw Nothing is the right-identity of <|>. 2017-08-06 18:53:15 -04:00
Rob Rix
7713277876 Throw Nothing is the left-identity of <|>. 2017-08-06 18:53:09 -04:00
Rob Rix
8d9d54dbcc Throw takes its error in a Maybe. 2017-08-06 18:53:05 -04:00
Rob Rix
dafcd40067 Lookahead to prevent matching the else clause. 2017-08-06 18:53:02 -04:00
Rob Rix
3b9523ba58 Qualify the import of Data.Functor.Foldable. 2017-08-06 18:52:59 -04:00
Rob Rix
0ec05480f8 🔥 a redundant import. 2017-08-06 18:52:56 -04:00
Rob Rix
59fd521709 Add callstacks to while & until. 2017-08-06 18:52:52 -04:00
Rob Rix
56eb9407b9 Simplify ifStatement. 2017-08-06 18:52:49 -04:00
Rob Rix
357ffe6616 Simplify the definition of until. 2017-08-06 18:52:46 -04:00
Rob Rix
2bc2483af9 Define an until combinator. 2017-08-06 18:52:42 -04:00
Rob Rix
8d7fb65a4a Better docs for while. 2017-08-06 18:52:39 -04:00
Rob Rix
59e6fd621c 🔥 stateErrorCounter. 2017-08-06 18:52:35 -04:00
Rob Rix
722e5407cd 🔥 the grammar parameter from State. 2017-08-06 18:52:31 -04:00
Rob Rix
2adbf0cfa1 Assign unambiguously. 2017-08-06 18:52:24 -04:00
Rob Rix
ac1adfe5bc Uncommitted choices backtrack. 2017-08-06 18:52:20 -04:00
Rob Rix
4cba3fd2fc 🔥 redundant bindings. 2017-08-06 18:52:16 -04:00
Rob Rix
edfb98ff7d Apply both rewrapping functions. 2017-08-06 18:52:11 -04:00
Rob Rix
341f806806 Remove the fallback from committed choice. 2017-08-06 18:52:06 -04:00
Rob Rix
ea26a943e5 Simplify catch handling again. 2017-08-06 18:52:01 -04:00
Rob Rix
295c933eaa Export nodeError. 2017-08-06 18:51:57 -04:00
Rob Rix
b591c63c5d Only attempt error recovery at nodes. 2017-08-06 18:51:53 -04:00