641 Commits

Author SHA1 Message Date
Nathan Lilienthal
5fb5c638bc Remove and ignore generated files. 2017-03-30 13:11:27 -07:00
Niko Matsakis
6f12cfe41b Merge pull request #208 from wieczyk/issue203_enable_constructing_lr1_states_via_envvar
Enabling lane-table-algorithm via environment variable
2017-03-29 07:50:57 -06:00
Pawel Wieczorek
8a0fae86b3 Enabling lane-table-algorithm via environment variable 2017-03-28 19:40:48 +02:00
Niko Matsakis
e9a06edd85 Merge pull request #207 from tildeio/upgrade-regex-syntax
Upgrade regex-syntax
2017-03-28 05:19:13 -04:00
Niko Matsakis
9e529089d3 convert panics into Err results for byte-based regex
We don't currently support byte-based regular expressions,
though it does seem like something that would be potentially
useful in the future.
2017-03-28 04:44:03 -04:00
Peter Wagenet
b12643d413 Upgrade regex-syntax
This fixes a bug where some regexes are not correctly printed as string literals.
2017-03-27 18:54:57 -07:00
Niko Matsakis
b78b2aaaa1 Merge pull request #198 from nikomatsakis/lane-table-algorithm
Further progress towards lane table algorithm
2017-03-23 06:09:21 -04:00
Niko Matsakis
301a2a23e2 remove unstable features 2017-03-23 05:59:05 -04:00
Niko Matsakis
dfb4040da1 Merge pull request #199 from federicomenaquintero/master
Fix for the README.md, and a small documentation fix
2017-03-23 05:16:58 -04:00
Federico Mena Quintero
c2118466de tutorial.md: Fix grammar and make a picture more legible 2017-03-21 21:02:38 -06:00
Federico Mena Quintero
c6bfeb80c3 tutorial: Use the same suggested version for the regex crate as in the toplevel README.md 2017-03-21 20:35:17 -06:00
Federico Mena Quintero
b64b1480b5 README.md: Mention a version of the regex crate that actually exists 2017-03-21 20:34:52 -06:00
Niko Matsakis
4cc5e50166 fix typo in the README 2017-03-21 05:15:03 -04:00
Niko Matsakis
a26cd51862 Merge pull request #197 from wieczyk/issue179_inconsistency_when_switching_parser_modes
parse table generator is now packing terminal parameters into tuple
2017-03-21 05:14:07 -04:00
Pawel Wieczorek
d6ebe3b0f0 Added comments explaining usage of artifical token Tok::Fraction 2017-03-19 15:49:38 +01:00
Pawel Wieczorek
baf722a403 parse table generator is now packing terminal parameters into tuple 2017-03-19 04:59:30 +01:00
Niko Matsakis
4ca00adf07 Merge pull request #196 from wieczyk/issue157_bracket_chars_are_perceived_as_part_of_syntax
Issue157 bracket chars are perceived as part of syntax
2017-03-18 07:57:05 -04:00
Pawel Wieczorek
040c76776e Added tests for error-cases for tokenizer 2017-03-17 22:32:23 +01:00
Niko Matsakis
e4f73c3757 try the large example, which revealed a few bugs 2017-03-17 06:19:46 -04:00
Niko Matsakis
b774a53fa7 add a comment 2017-03-17 05:15:12 -04:00
Niko Matsakis
25d89effd3 implement the rest of the lane table algorithm
Or, at least, enough to pass the "torturous" `paper_example_g1_build`
test.
2017-03-17 05:14:38 -04:00
Pawel Wieczorek
6fb8f7e8de Better coverage for new method of handling character literals in
tokenizer.
2017-03-16 19:49:50 +01:00
Niko Matsakis
7515fccef6 inefficient version of the core lane table algorithm
The missing piece is updating the lookaheads of the new states that wind
up getting created.
2017-03-16 08:54:47 -04:00
Pawel Wieczorek
ebfdb238f6 Initial fix for nikomatsakis/lalrpop#157 2017-03-16 00:25:37 +01:00
Niko Matsakis
5144980de5 some limited comments referring back to the README 2017-03-15 06:16:13 -04:00
Niko Matsakis
16c0cbad26 create a state set where each state maps to a ContextSet 2017-03-15 06:13:45 -04:00
Niko Matsakis
e6a2c29c1d add method rows() that creates a ContextSet for each state 2017-03-15 05:40:40 -04:00
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