Niko Matsakis
27e154f072
update README to describe The Plan
2017-03-10 06:14:02 -05:00
Niko Matsakis
416d3801d6
factor out the first-sets and state-graph
...
Rebuilding them is just silly
2017-03-08 05:44:32 -05:00
Niko Matsakis
e02bca0a92
add an initial version of the LR(1) construction algorithm
...
It only handles LALR(1) grammars right now.
2017-03-08 05:27:03 -05:00
Niko Matsakis
8203eac67c
rewrite the lane table tracing to start with a conflicting action
...
This removes all the redundant columns due to shifts.
2017-03-07 05:59:03 -05:00
Niko Matsakis
c7ba5efd79
convert the lane-table construction to always use LR0 internally
...
It's more efficient.
2017-03-07 05:48:59 -05:00
Niko Matsakis
18b775112d
start writing up how the lane table stuff works
...
This is my best effort to supplement the existing paper and also just
document my own personal understanding.
2017-03-07 05:11:41 -05:00
Niko Matsakis
68532b5439
make lane table construction generic in lookahead L
2017-03-06 06:48:40 -05:00
Niko Matsakis
8f3f864688
rename tests to reference the paper more explicitly
...
Also include the full G1, which I now see is the smallest example (or
one of them) that requires splitting a state.
2017-03-06 06:00:31 -05:00
Niko Matsakis
8bf0117e9e
remove unused dependency bitflags
2017-03-06 05:20:33 -05:00
Niko Matsakis
f01edc0423
add a conflict set
2017-03-06 05:20:28 -05:00
Niko Matsakis
87ecc86426
Merge pull request #186 from king6cong/master
...
unify dep info
2017-03-06 05:17:15 -05:00
king6cong
e570f44427
unify dep info
...
adjust doc cargo.toml so that publish.sh correctly unify dep version
2017-03-06 00:10:53 +08:00
Niko Matsakis
c961159578
Merge pull request #192 from nikomatsakis/ascii-canvas-crate
...
move `ascii-canvas` into its own crate
2017-03-03 04:43:34 -05:00
Niko Matsakis
bb2b0904f3
move ascii-canvas
into its own crate
2017-03-02 05:52:54 -05:00
Niko Matsakis
7ac329ac93
Merge pull request #191 from ahmedcharles/unused
...
Remove unused function.
2017-03-02 05:30:36 -05:00
Niko Matsakis
3fa9e14b89
Merge pull request #190 from ahmedcharles/upgrade
...
Upgrade various packages to their latest versions.
2017-03-02 05:30:06 -05:00
Niko Matsakis
75c1b9d5d5
Merge pull request #189 from ahmedcharles/doctests
...
Disable doctests in lalrpop-snap.
2017-03-02 05:29:35 -05:00
Ahmed Charles
1442fd037e
Remove unused function.
2017-03-01 17:52:36 -08:00
Ahmed Charles
8c18b80841
Upgrade various packages to their latest versions.
2017-03-01 16:57:28 -08:00
Ahmed Charles
950b908930
Disable doctests in lalrpop-snap.
2017-03-01 16:39:45 -08:00
Niko Matsakis
43872afe75
Merge pull request #187 from nikomatsakis/regex
...
remove DFA codegen and replace with regex-set
2017-02-28 06:39:09 -05:00
Niko Matsakis
9a8f0cb179
store the string list into a local, so we can coerce it
2017-02-27 20:22:11 -05:00
Niko Matsakis
0705f422e7
remove DFA codegen and replace with regex-set
2017-02-27 10:12:39 -05:00
Niko Matsakis
9791cdb419
Merge pull request #184 from nikomatsakis/0.12.5
...
Release 0.12.5
2017-02-11 08:20:01 +01:00
Niko Matsakis
826be9555c
publish 0.12.5
0.12.5
2017-02-11 08:19:16 +01:00
Niko Matsakis
ffab149493
bump to 0.12.5
2017-02-11 08:11:03 +01:00
Niko Matsakis
4d05b62b99
update release notes
2017-02-11 08:10:37 +01:00
Niko Matsakis
70ed503f98
Merge pull request #182 from Marwes/error_recovery_panic
...
fix: Don't accidentally cast a reduce action to usize
2017-02-07 07:08:18 +01:00
Markus Westerlind
b69e679d5b
fix: Don't accidentally cast a reduce action to usize
...
This caused panics in certain error recovery scenarios as a reduce action represented by a negative number would get casted to `usize` which then caused an index out of bounds panic.
The added tests were extracted and minimized from [gluon's grammar](abd06a4f6e/parser/src/grammar.lalrpop
) with the test case below being a minimal reproduction.
Panicking
```
type Test = a ->
```
Valid expression
```
type Test = a -> a
in 1
```
2017-01-28 16:22:37 +01:00
Niko Matsakis
333aaef2e8
Merge pull request #178 from Marwes/expected_tokens
...
feat: Add the expected successor tokens to UnrecognizedToken errors
2017-01-06 04:26:14 -05:00
Markus Westerlind
77c82c0cd4
feat: Add the expected successor tokens to UnrecognizedToken errors
...
This just adds the terminal strings defined in the grammar which is not the best possible information but it is better than no information.
Partial fix for #58
2016-12-28 19:31:06 +01:00
Niko Matsakis
5731a3f582
Merge pull request #175 from paupino/feature/fix-readme
...
Fixes typo in README.md for Configuration object
2016-12-04 03:46:10 -08:00
Paul Mason
54bad3c5f7
Fixes typo in README.md for Configuration object
2016-12-03 17:51:09 -08:00
Niko Matsakis
81efcba748
Merge pull request #174 from nikomatsakis/release-0.12.4
...
Release 0.12.4
0.12.4
2016-11-30 02:10:53 -08:00
Niko Matsakis
a3144a1b88
publish 0.12.4
2016-11-29 14:47:11 -05:00
Niko Matsakis
1e9e96be61
update RELEASES.md to talk about 0.12.4
2016-11-29 14:41:27 -05:00
Niko Matsakis
fa1c31eac8
bump version number to 0.12.4
2016-11-29 13:51:41 -05:00
Niko Matsakis
ec63b4e8a7
publish 0.12.3
2016-11-29 13:51:21 -05:00
Niko Matsakis
9c0d597afb
update releases to mention 0.12.3
2016-11-29 13:51:21 -05:00
Niko Matsakis
9b4d5d588d
update version numbers to 0.12.3
2016-11-29 13:51:21 -05:00
Niko Matsakis
5841facb69
fix parentheses
2016-11-29 13:51:21 -05:00
Niko Matsakis
69acad349d
release 0.12.2
2016-11-29 13:51:21 -05:00
Niko Matsakis
49ea2b4795
remove main.rs from lalrpop-snap
...
it interferes with publish
2016-11-29 13:51:21 -05:00
Niko Matsakis
a3745f4878
update version numbers for 0.12.2
2016-11-29 13:51:21 -05:00
Niko Matsakis
6b446e8831
Merge pull request #173 from Marwes/fix_clone
...
fix: Actually avoid all clones when not using error recovery
2016-11-29 10:39:54 -08:00
Markus Westerlind
bf7c7901e9
fix: Actually avoid all clones when not using error recovery
2016-11-29 17:54:37 +01:00
Niko Matsakis
47308d0d9d
Merge pull request #170 from Marwes/fix_clone_token
...
Only generate code for error recovery if it is used
2016-11-25 06:38:34 -08:00
Markus Westerlind
7a9b6e7117
Only generate code for error recovery if it is used
...
Since error recovery requires cloneable tokens we avoid emitting the error recovery code unless it is actually needed. Note that this change still keeps the error terminal in the generated tables.
2016-11-23 19:44:51 +01:00
Niko Matsakis
d710c1f3f0
Merge pull request #168 from nikomatsakis/snapshot
...
New snapshot
2016-11-23 01:55:08 -08:00
Niko Matsakis
99962ccb49
create new snapshot
2016-11-23 04:32:17 -05:00