Rob Rix
|
0bf52e3dde
|
Result has field selectors.
|
2017-04-28 15:54:34 -04:00 |
|
Rob Rix
|
8872a7ec6a
|
Errors record the symbol of the current node (if any).
|
2017-04-28 15:49:00 -04:00 |
|
Rob Rix
|
0168773814
|
Results hold errors instead of text.
|
2017-04-28 15:45:13 -04:00 |
|
Rob Rix
|
3d1e74bf4e
|
Define an Error datatype.
|
2017-04-28 15:34:18 -04:00 |
|
Rob Rix
|
250d095598
|
Result only has one case.
|
2017-04-28 15:31:23 -04:00 |
|
Rob Rix
|
a988d54ed6
|
Propagate errors from alternations.
|
2017-04-28 15:26:19 -04:00 |
|
Rob Rix
|
eb089bb571
|
Successful results can hold errors.
|
2017-04-28 15:24:42 -04:00 |
|
Rob Rix
|
ec8be238d1
|
Children assignments continue after the last child assignment.
|
2017-04-28 15:19:55 -04:00 |
|
Rob Rix
|
ca0d4328ff
|
Return the final state from assignAllFrom.
|
2017-04-28 15:18:33 -04:00 |
|
Rob Rix
|
a14b241a35
|
Merge pull request #1089 from github/committed-choice
Committed choice
|
2017-04-27 20:03:24 -04:00 |
|
Rob Rix
|
d1b088eda5
|
Work around the lack of Show1 for IntMap in lts.
|
2017-04-26 18:39:39 -04:00 |
|
Rob Rix
|
d6b7e408e3
|
Don’t add a newline after the caret.
|
2017-04-26 15:27:30 -04:00 |
|
Rob Rix
|
f991988eea
|
Show the source of errors.
|
2017-04-26 14:54:29 -04:00 |
|
Rob Rix
|
d9d7f98921
|
Consolidate error reporting.
|
2017-04-26 14:37:07 -04:00 |
|
Rob Rix
|
dfab45dc65
|
Tidy up handling of Empty rules.
|
2017-04-26 13:50:45 -04:00 |
|
Rob Rix
|
59be638d70
|
🔥 the unlawful Monad instance for Result.
|
2017-04-26 13:40:03 -04:00 |
|
Rob Rix
|
52aa3800b7
|
Don’t use Result’s Monad instance for Children rules.
|
2017-04-26 13:39:42 -04:00 |
|
Rob Rix
|
d2da6e1ad7
|
Move the Alt rule down to reflect constructor order.
|
2017-04-26 13:37:48 -04:00 |
|
Rob Rix
|
89b30a5124
|
Pull the Choose case up a level.
|
2017-04-26 13:36:57 -04:00 |
|
Rob Rix
|
095e279380
|
Pull the Children case up a level.
|
2017-04-26 13:35:21 -04:00 |
|
Rob Rix
|
a6b5fa0634
|
Pull the Source case up a level.
|
2017-04-26 13:33:52 -04:00 |
|
Rob Rix
|
f781118abb
|
Move the location at end case up.
|
2017-04-26 13:32:24 -04:00 |
|
Rob Rix
|
2db005505e
|
Pull the Location case up a level.
|
2017-04-26 13:31:26 -04:00 |
|
Rob Rix
|
3de156447f
|
Match against the nodes.
|
2017-04-26 13:30:07 -04:00 |
|
Rob Rix
|
e9bff3be5a
|
Use the where clause’s binding for the source.
|
2017-04-26 13:28:34 -04:00 |
|
Rob Rix
|
4103936ca2
|
Use the where clause’s binding for the offset.
|
2017-04-26 13:28:04 -04:00 |
|
Rob Rix
|
b392c9d6b7
|
Bind the post-drop state in the where clause.
|
2017-04-26 13:24:04 -04:00 |
|
Rob Rix
|
a430b444f5
|
Pull the runAssignment iterator into the where clause.
|
2017-04-26 13:23:07 -04:00 |
|
Rob Rix
|
e67f5a9398
|
Guard terms with symbols.
|
2017-04-26 13:19:10 -04:00 |
|
Rob Rix
|
296717777d
|
Rearrange leaf to put the fmap first.
|
2017-04-26 13:18:40 -04:00 |
|
Rob Rix
|
b9027441e2
|
Use the leaf combinator to assign constants and identifiers.
|
2017-04-26 12:37:13 -04:00 |
|
Rob Rix
|
34e945d1fa
|
Use the leaf combinator to assign literals & comments.
|
2017-04-26 12:34:34 -04:00 |
|
Rob Rix
|
620b1ebd49
|
Flip leaf’s argument order.
|
2017-04-26 12:33:51 -04:00 |
|
Rob Rix
|
860138fe19
|
🔥 an extra space.
|
2017-04-26 12:33:37 -04:00 |
|
Rob Rix
|
129d962041
|
Add a leaf combinator.
|
2017-04-26 12:31:00 -04:00 |
|
Rob Rix
|
c2df871607
|
Replace Symbol with a unary Choose.
|
2017-04-26 12:17:43 -04:00 |
|
Rob Rix
|
d583b3cfcc
|
Prevent forgetting to shadow the initial state.
|
2017-04-26 12:11:03 -04:00 |
|
Rob Rix
|
677031daaa
|
Choices’ errors note the choice.
|
2017-04-26 12:07:33 -04:00 |
|
Rob Rix
|
77fe6aff31
|
empty is the left- and right-identity of <|>.
|
2017-04-26 12:05:49 -04:00 |
|
Rob Rix
|
ffe7b2ff66
|
Handle alternations of choices on both sides.
|
2017-04-26 12:04:34 -04:00 |
|
Rob Rix
|
38a92b7eda
|
Handle alternations of choices on the right.
|
2017-04-26 12:00:51 -04:00 |
|
Rob Rix
|
c85081ea6b
|
Show the symbol when choice fails.
|
2017-04-26 11:58:03 -04:00 |
|
Rob Rix
|
ffbca016db
|
Avoid revisiting anonymous nodes.
|
2017-04-26 11:47:53 -04:00 |
|
Rob Rix
|
e89ea96739
|
Test the specific error message we get for cascading children failures.
|
2017-04-26 11:45:58 -04:00 |
|
Rob Rix
|
d57df3f5fb
|
Show a better error for symbol rules.
|
2017-04-26 11:44:53 -04:00 |
|
Rob Rix
|
61b3e3c71f
|
Show a better error for symbol rules at end of input.
|
2017-04-26 11:40:59 -04:00 |
|
Rob Rix
|
6010bcb439
|
Show a better error for committed choice at end of input.
|
2017-04-26 11:39:32 -04:00 |
|
Rob Rix
|
b7d84470fb
|
Extract how we show choices into the where clause.
|
2017-04-26 11:37:00 -04:00 |
|
Rob Rix
|
b7899248d5
|
🔥 a redundant FIXME.
|
2017-04-26 11:34:43 -04:00 |
|
Rob Rix
|
2154e4a4ad
|
Construct committed choices using the Alternative interface.
|
2017-04-26 11:29:24 -04:00 |
|