1
1
mirror of https://github.com/github/semantic.git synced 2024-12-23 23:11:50 +03:00
Commit Graph

14385 Commits

Author SHA1 Message Date
Rob Rix
a433fe8072 Abbreviate the definition of state. 2017-08-04 11:29:34 -04:00
Rob Rix
91f149310d Inline assignBy to keep it out of the profile. 2017-08-04 11:25:50 -04:00
Rob Rix
8c13aadce0 Merge uncommitted choices at the right. 2017-08-04 10:47:45 -04:00
Rob Rix
a8d7ee531a Simplify how alternatives append onto Alt rules. 2017-08-04 10:45:07 -04:00
Rob Rix
9dd03613f8 nodeSymbol & stateNodes cannot be unpacked. 2017-08-04 10:43:25 -04:00
Rob Rix
bc930773d1 Allow Location rules to participate in committed choices. 2017-08-04 10:32:04 -04:00
Rob Rix
fc6b49c4ec Freeze the call stacks for location & projection rules. 2017-08-04 10:27:21 -04:00
Rob Rix
ed93b6e1fa Unpack Node fields. 2017-08-04 10:11:19 -04:00
Rob Rix
76d57fc192 Unpack state fields. 2017-08-04 10:09:55 -04:00
Rob Rix
4b1365729b Strictify state fields. 2017-08-04 10:08:50 -04:00
Rob Rix
e4bcdf293f Compare the states directly. 2017-08-04 10:08:16 -04:00
Rob Rix
a72b1aaaf3 Use on to compare the offsets. 2017-08-04 10:06:36 -04:00
Rob Rix
2fec9f283a Factor the matched element out. 2017-08-04 10:05:58 -04:00
Rob Rix
da988a4c6f Build up repetitions right-recursively. 2017-08-04 10:03:38 -04:00
Rob Rix
8406ba35c2 Correct the docs. 2017-08-04 09:47:45 -04:00
Rob Rix
075b77f931 🔥 unnecessary quantification. 2017-08-04 09:33:54 -04:00
Rob Rix
35f92f98c3 Fix a test now that we always try the error handler on errors. 2017-08-04 09:21:59 -04:00
Rob Rix
0f08846156 Always use the error handler when applicable. 2017-08-04 09:20:44 -04:00
Rob Rix
a778382e85 📝 disamb. 2017-08-04 09:16:24 -04:00
Rob Rix
17102a87b8 📝 Amb. 2017-08-04 09:15:15 -04:00
Rob Rix
0a8411e534 Disambiguate assignment results. 2017-08-04 09:11:22 -04:00
Rob Rix
7bd2d6b94b Merge branch 'master' into delimited-control 2017-08-04 09:00:07 -04:00
Rob Rix
68d3a265ae Fix a test with ambiguous results. 2017-08-04 08:58:28 -04:00
Rob Rix
61087b394e Fix a test case which now succeeds. 2017-08-04 08:54:04 -04:00
Rob Rix
71642ae1bd Fix a test case which fails at the end of input. 2017-08-04 08:52:08 -04:00
Rob Rix
9e1aad5032 Fix a test case which fails with the earlier error. 2017-08-04 08:50:56 -04:00
Rob Rix
c117abe1fd Disallow catches of committed choices from recovering at the end of input. 2017-08-04 08:49:54 -04:00
Rob Rix
9d1ade2654 Factor out the list & state. 2017-08-03 22:46:46 -04:00
Rob Rix
e9e9c54fa1 Correct a spec. 2017-08-03 21:32:47 -04:00
Rob Rix
47a3f1e713 Correct the tests. 2017-08-03 21:32:11 -04:00
Rob Rix
cabab1f9ed Check advancement using the state offset instead of the counter. 2017-08-03 21:29:22 -04:00
Rob Rix
9bfe67afd9 🔥 stateError. 2017-08-03 21:26:43 -04:00
Rob Rix
a57aa0bf2b Share the continuation. 2017-08-03 21:23:47 -04:00
Rob Rix
bece561240 Unfreeze the callstacks in <|>. 2017-08-03 21:13:35 -04:00
Rob Rix
4dded01e73 Preserve callstacks through exhaustiveness checks. 2017-08-03 21:11:29 -04:00
Rob Rix
ffb01ff388 Freeze the callstacks in <|>. 2017-08-03 21:10:08 -04:00
Rob Rix
abaad4fc76 Assignment is non-strict. 2017-08-03 21:05:11 -04:00
Rob Rix
cbff2fee2d Take the first zero-error term, if any, before forcing the rest. 2017-08-03 21:04:38 -04:00
Rob Rix
42a22aad72 Amb is non-strict. 2017-08-03 21:03:42 -04:00
Rob Rix
0617502efe Order repetitions greedily. 2017-08-03 20:52:27 -04:00
Rob Rix
d5749545ce Children, projection, & source rules are unambiguous. 2017-08-03 20:51:46 -04:00
Rob Rix
e9c61048ec Committed choices are really committed. 2017-08-03 20:30:55 -04:00
Rob Rix
cb58739e48 Select terms by the minimum error counter. 2017-08-03 20:26:51 -04:00
Rob Rix
788f435b1e Define a disambiguation convenience. 2017-08-03 20:23:29 -04:00
Rob Rix
030b2967c3 Add a monotonic counter of the number of error handlers invoked. 2017-08-03 20:21:42 -04:00
Rob Rix
d1e3518732 Avoid recomputating the bodies of catch rules. 2017-08-03 20:17:59 -04:00
Rob Rix
92f2745bc3 Alternate entire children rules, not just successful ones. 2017-08-03 20:13:06 -04:00
Rob Rix
24b93e0ad6 Allow ambiguous parses with and without the error handler. 2017-08-03 20:00:45 -04:00
Rob Rix
232bf01302 Allow ambiguous matches past source, children, & projection rules. 2017-08-03 19:57:42 -04:00
Rob Rix
c4f1296a3b Simplify committed choices with backtracking. 2017-08-03 19:54:51 -04:00