Niko Matsakis
d23d71b1e1
update version number to 0.6.1
2015-09-15 06:25:38 -04:00
Niko Matsakis
011bf08c51
Walk the referenced parameters for a nominal type. Fixes #17 .
2015-09-15 06:12:44 -04:00
Niko Matsakis
0e508a06c5
change to use btreemap, which should be deterministic, so that
...
we generate the same code given same input
2015-09-11 07:55:03 -04:00
Niko Matsakis
4353c41441
Publish 0.5.0 and bump version number to 0.6.0
2015-09-11 06:56:57 -04:00
Niko Matsakis
7b905b2b50
change syntax for multiple alterantives from {A;B;}
to {A,B}
, since
...
this matches Rust better
[release notes]
2015-09-08 11:12:45 -04:00
Niko Matsakis
734b2bc27c
regenerated rs files
2015-09-08 10:01:51 -04:00
Niko Matsakis
e18dd45972
port the intern_tok to use regular expressions
2015-09-08 09:56:52 -04:00
Niko Matsakis
de5b61b085
final changes needed to make intern_tok.rs pass
2015-09-08 09:56:52 -04:00
Niko Matsakis
d8de800b1d
if intern token is used, link it in rather than taking an iterator
2015-09-08 09:56:52 -04:00
Niko Matsakis
0ddf37576b
fix some minor bugs, always run token check
2015-09-08 09:56:52 -04:00
Niko Matsakis
088510c9be
convert to generate the start function *inside* the LR1
...
module and `pub use` it from outside
2015-09-08 09:56:51 -04:00
Niko Matsakis
098cfb1639
small optimization: move shifting code into the state, rather
...
than the transition
2015-08-16 07:51:47 -04:00
Niko Matsakis
8d4b234383
push version back to 0.5.0
2015-08-16 06:15:00 -04:00
Niko Matsakis
aa68677a42
minor fix to test
2015-08-16 06:06:51 -04:00
Niko Matsakis
51ac61a1f7
Bump version to 0.5.0
2015-08-15 22:28:11 -04:00
Niko Matsakis
7f3f6e106d
update snapshot
2015-08-15 22:20:53 -04:00
Niko Matsakis
d3db4a2d1b
simplify the syntax: s/extern token/extern/
2015-08-15 22:15:48 -04:00
Niko Matsakis
fa2b84bb46
bump version number to 0.4.0
2015-08-15 22:06:17 -04:00
Niko Matsakis
b4b88cd059
publish version 0.3.0
2015-08-15 22:06:01 -04:00
Niko Matsakis
9e6885bf3c
allow terminals to be declared without quotes, and use
...
this form in the various lalrpop-test grammars (don't
have unit tests for it at the moment)
2015-08-15 22:00:22 -04:00
Niko Matsakis
eb6aa5e176
condense reductions that share the same production to reduce
...
output file size
2015-08-11 06:38:40 -04:00
Niko Matsakis
e02aaef522
add support for LALR(1)
2015-08-01 23:30:13 -07:00
Niko Matsakis
0e46b4bbcd
update version numbers; break intern into its own crate
2015-07-27 13:09:36 -04:00
Niko Matsakis
26b72c6f0e
Update version number to 0.2 to reflect new in progress release
2015-07-27 05:36:33 -04:00
Niko Matsakis
d8a47a7345
update cargo.toml files, readme
2015-07-26 07:49:45 -04:00
Niko Matsakis
92d64f854b
bootstrapping successfully now (but unit tests prob not working yet;
...
lalrpop-test works)
2015-07-24 07:58:06 -04:00
Niko Matsakis
b872e3d68f
tweak error.lalrpop
2015-07-21 20:49:47 -04:00
Niko Matsakis
1bbfb9d764
let users specify fallible rules (and the error type)
2015-07-21 12:45:38 -04:00
Niko Matsakis
69a881d4a5
Rename @< and @> to @L and @R
2015-07-21 06:50:41 -04:00
Niko Matsakis
b08e0cfe17
make it possible for tokenizer to generate errors (and thread the
...
logic through); use traits to be relatively seamless in what
we accept
2015-07-21 06:22:29 -04:00
Niko Matsakis
0530810f10
modify generate code to require a utility library (lalrpop-util
) and
...
to generate errors based on the error type defined therein
2015-07-21 05:18:32 -04:00
Niko Matsakis
91dc00aa89
better test for using super
2015-07-20 13:02:15 -04:00
Niko Matsakis
9f4c82cf36
refactor how we handle locations so that it is only the parse_FOO
...
function that does the adaptation for optional location information (is
optional location information even worth it, or should we just default
to `()`)?
2015-07-20 06:18:59 -04:00
Niko Matsakis
8d1fed1e25
change parse_Foo
so that it expects to consume entire input;
...
later we'll make a version called `resume_Foo` or something that
lets you supply the initial state (lookbehind, lookahead, etc)
in its entirety
2015-07-20 05:43:07 -04:00
Niko Matsakis
2383a021c9
change the behavior of @<
and friends so that instead of supplying
...
`None`, they use `Default::default`. You can always give an option
yourself if that's what you want, after all, but most of the time
it's kind of annoying!
2015-07-20 05:36:52 -04:00
Niko Matsakis
ae37f374cc
move the action code back into the parent module so that super::
...
resolves correctly (as I originally intended, but forgot) and
add a test
2015-07-20 05:21:12 -04:00
Niko Matsakis
4c74cc6873
Move the LALRPOP tokenizer into lalrpop itself; rename the existing
...
token to lexer; add a few more tests and fix a bug in `test`
2015-07-19 14:03:00 -04:00
Niko Matsakis
a40f774ecc
initial take on a tokenizer for LALRPOP
2015-07-19 13:05:34 -04:00
Niko Matsakis
6da930bbf6
get lookahead/lookbehind working, and add a test to laprpop-test for it
2015-07-18 18:14:39 -04:00
Niko Matsakis
f758e0ff00
thread through most of the work to support lookahead/lookbehind,
...
but not the actual expansion (untested, clearly)
2015-07-18 06:40:30 -04:00
Niko Matsakis
fad838a361
modify recursive ascent to expect (loc, enum, loc) when a location type
...
is specified, and modify test tokenizer to provide it
2015-07-17 09:07:30 -04:00
Niko Matsakis
c92619fe15
implement associated types for extern tokens and track an (optional)
...
location type
2015-07-15 19:38:15 -04:00
Niko Matsakis
59de015817
tweak the escaping to actually be correctish
2015-07-15 13:31:50 -04:00
Niko Matsakis
a1da099572
various annoying things to get macros working
2015-07-15 09:35:24 -04:00
Niko Matsakis
bfe72e14fc
Misc changes to make the expr-arena-ast test case work
...
(threading through type parameters etc)
2015-07-15 06:21:43 -04:00
Niko Matsakis
ccf9320b10
introduce a write_fn_header fn and use it in a few places,
...
with the intention of making it possible to thread grammar parameters
through
2015-07-14 22:28:20 -04:00
Niko Matsakis
8f14f9a3f3
structure to be more friendly to adding parameters
2015-07-14 12:48:54 -04:00
Niko Matsakis
0ee3ac81d6
add some more namespacing
2015-07-14 11:47:31 -04:00
Niko Matsakis
a4d2444950
add more prefixing, I think to all identifiers this time
2015-07-14 11:45:51 -04:00
Niko Matsakis
f346ce8a06
namespace tokens in generated code
2015-07-14 11:32:58 -04:00