Niko Matsakis
67a0dc1b32
add a drive
function
2018-11-29 19:55:24 +01:00
Niko Matsakis
47a8ea7d43
give names to anonymous lifetimes and introduce where-clauses
2018-11-29 19:55:24 +01:00
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