1029 Commits

Author SHA1 Message Date
Niko Matsakis
080611a725 generate state machine definition (but do not use to drive parsing)
This version however requires all lifetimes to be explicit. Suboptimal.
2018-11-29 19:55:24 +01:00
Niko Matsakis
d0d6cc6bbb refactor the write_fn_header to use a builder
Too many parameters!
2018-11-29 19:55:24 +01:00
Niko Matsakis
00158bd763 promote free_variables to a directory 2018-11-29 19:55:24 +01:00
Niko Matsakis
5bfa1af9fa improve logic around free-variables to account for false answers 2018-11-29 19:55:24 +01:00
Niko Matsakis
9d37210c45 extract a helper for filtering type-params/where-clauses 2018-11-29 19:55:24 +01:00
Niko Matsakis
6b96c4d9bb lower (and flatten) into repr::WhereClause 2018-11-29 19:55:24 +01:00
Niko Matsakis
0f0533d539 add a newtype of Atom for Lifetime 2018-11-29 19:55:24 +01:00
Niko Matsakis
e82990331d stop abusing map to find free variables of WC 2018-11-29 19:55:24 +01:00
Niko Matsakis
4117907695 rewrite referenced to a trait FreeVariables 2018-11-29 19:55:24 +01:00
Niko Matsakis
a9d8937fa9 refactor how forall is represented in the AST 2018-11-29 19:55:24 +01:00
Niko Matsakis
60751e68c3 remove the no_clone_tok test case 2018-11-29 19:55:24 +01:00
Niko Matsakis
bf1ebfda95 customize whether fns include grammar parameters 2018-11-29 19:55:24 +01:00
Niko Matsakis
baf98e4ac5 create a state machine and start moving code over 2018-11-29 19:55:23 +01:00
Markus Westerlind
842fe732ba
Merge pull request #421 from Marwes/release
Version 0.16.2
2018-11-28 20:45:46 +01:00
Markus Westerlind
1797a173c9 Version 0.16.2 2018-11-28 20:21:55 +01:00
Markus Westerlind
273e54452f
Merge pull request #418 from tjade273/repeatop_fix
Fix type annotation for inline actions
2018-11-28 19:46:36 +01:00
Tjaden Hess
c263536348 Reset action code to previous commit 2018-11-28 13:24:43 -05:00
Tjaden Hess
29342b1425 Style tweaks 2018-11-28 10:58:30 -05:00
Tjaden Hess
c1ed927dac Only insert annotations when type parameters exist 2018-11-11 16:53:46 -05:00
Tjaden Hess
8d27a4ab1c Propogate type parameters in inline actions 2018-11-11 13:53:41 -05:00
Tjaden Hess
5631a32210 Reduce test case 2018-11-11 12:18:13 -05:00
Tjaden Hess
7aec3b0f2f test: failing test for #417 2018-11-11 12:11:53 -05:00
Markus Westerlind
28533afc7f
Merge pull request #416 from Marwes/release
Release 0.16.1
2018-10-27 14:47:54 +02:00
Markus Westerlind
8e86f888df Version 0.16.1 0.16.1 2018-10-27 14:18:59 +02:00
Markus Westerlind
6f3da4ed85 Update RELEASES.md with clog 2018-10-27 13:44:27 +02:00
Markus Westerlind
7f071a375b Push tag to upstream as well 2018-10-27 13:44:27 +02:00
Markus Westerlind
0a02931960 Update all dependencies
Only term is now on an old version (which depends on ascii-canvas which uses 0.4)
2018-10-27 13:30:45 +02:00
Markus Westerlind
eba453d876
Merge pull request #414 from Marwes/shrink_lrgrammar2
feat: Shrink LALRPOPs own parser to 1Mb
2018-10-27 13:24:36 +02:00
Markus Westerlind
490dd9d565
Merge pull request #412 from Marwes/no_lalrpop_snap
Don't depend on lalrpop-snap to compile lalrpop
2018-10-27 13:23:45 +02:00
Markus Westerlind
6a6f93720d
Merge pull request #411 from Marwes/cfg
feat: Let parse rules be conditionally compiled
2018-10-27 13:23:36 +02:00
Markus Westerlind
e387202044
Merge pull request #415 from Marwes/fmt
Format files that weren't formatted
2018-10-21 15:38:44 +02:00
Markus Westerlind
9f3a978fde feat: Add a setting to strip indentation from the generated grammar 2018-10-21 15:36:27 +02:00
Markus Westerlind
2d50a5d703 Update snapshot with the shared parser 2018-10-21 14:24:06 +02:00
Markus Westerlind
e5f2897aee Merge the public parsers in lrgrammar to one
This shrinks the generated code to 1Mb (from 2Mb WITH the cfg approach
in #413) while also removing the cfg'ing itself as that barely reduces the
size. (Thus this supersedes #413)

While this is a bit boilerplatey, I'd say it is worthile. We could
generate this in LALRPOP itself with some work
https://github.com/lalrpop/lalrpop/issues/304#issuecomment-431654594
2018-10-21 14:24:06 +02:00
Markus Westerlind
af12168773 Enable auto behavior for line endings in .gitattributes
Thought this was automatic but apparently not?
2018-10-21 14:23:44 +02:00
Markus Westerlind
15ba78f4ba Fix features and out-dir on the command line 2018-10-21 14:22:00 +02:00
Markus Westerlind
06967722a6 Ensure a consistent hash for lrgrammar.lalrpop 2018-10-21 14:22:00 +02:00
Markus Westerlind
a068fa3537 Avoid printing the entire diff if there are lots of lines 2018-10-21 14:22:00 +02:00
Markus Westerlind
66158dada1 Print out the first N lines that mismatched in the snapshot. 2018-10-21 14:22:00 +02:00
Markus Westerlind
c8df49872d feat: Allow setting features from the commandline 2018-10-21 14:22:00 +02:00
Markus Westerlind
3ff1b4c45f feat: Don't depend on lalrpop-snap to compile lalrpop
To recompile the snapshot we can now pass the snapshot feature instead
of copying over to the (now removed) lalrpop-snap directory
2018-10-21 14:22:00 +02:00
Markus Westerlind
9c26e5177e feat: Allow setting out_dir on the command line 2018-10-21 14:22:00 +02:00
Markus Westerlind
82aa6387bd Remove lalrpop-snap 2018-10-21 14:22:00 +02:00
Markus Westerlind
8df24776b1 Save the generated lrgrammar.rs file in the repo 2018-10-21 14:21:59 +02:00
Markus Westerlind
3e0624c90a Conditional doc 2018-10-21 14:21:41 +02:00
Markus Westerlind
e6b6a07fd6 feat: Let parse rules be conditionally compiled
Only public items can be conditionally compiled as those are the ones that affect the generated code.
2018-10-21 14:21:41 +02:00
Markus Westerlind
fa5a4ae4a3 Update lalrpop-snap 2018-10-21 14:21:40 +02:00
Markus Westerlind
89e809e408 Format files that werenÃ't formatted 2018-10-21 14:21:04 +02:00
Markus Westerlind
5800a234ce
Merge pull request #410 from Marwes/fmt
Run rustfmt
2018-10-16 22:17:10 +02:00
Markus Westerlind
ccd964cb1b Run rustfmt 2018-10-16 20:52:05 +02:00