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
cb66b6ddb9
Update README.md with latest published version
2015-08-15 22:27:57 -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
9bd038d2a0
start distinguishing quoted terminals from unquoted ones,
...
though we don't support unquoted ones yet
2015-08-15 18:02:56 -04:00
Niko Matsakis
bbc324fede
add test for an unknown terminal that is an identifier
2015-08-13 17:19:19 -04:00
Niko Matsakis
11a6f434ac
add codegen-units=4 to cargo.toml; sadly there doesn't seem to be a
...
better way to enable this
2015-08-11 18:16:41 -04:00
Niko Matsakis
aafbac662a
Update snapshot to share reduction code.
...
Appears to improve size by ~33%.
2015-08-11 07:11:39 -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
3899f4a297
add missing files from lalrpop-snap
2015-08-02 09:38:54 -07:00
Niko Matsakis
8112e8b88c
upgrade snap, switch to LALR(1)
2015-08-01 23:37:58 -07: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
263ed5f243
do not bump README version until publishing
2015-07-27 05:36:19 -04:00
Niko Matsakis
86a221bbb0
two utility scripts for updating version and publishing
2015-07-27 05:35:17 -04:00
Niko Matsakis
d8a47a7345
update cargo.toml files, readme
2015-07-26 07:49:45 -04:00
Niko Matsakis
9818f17a76
make tests pass
2015-07-26 06:02:24 -04:00
Niko Matsakis
e2299d1078
Require that there either be symbols or action (or both), but not
...
neither. This means that an empty production with no action is not
written `;` but rather `();`. This opens door for using more
`match` style syntax.
2015-07-26 05:58:11 -04:00
Niko Matsakis
940b583dde
ignore generated parser
2015-07-24 22:49:08 -04:00
Niko Matsakis
0e19272c01
get unit tests to pass
2015-07-24 22:48:41 -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
bf2945a6b4
self-hosted parsing is kinda working -- except that
...
I didn't implement yet the handling of patterns
2015-07-24 06:58:01 -04:00
Niko Matsakis
d67e04f5e4
setup (but don't yet use) a self-hosting scheme. newparser.rs
does
...
successfully convert though.
2015-07-24 06:01:33 -04:00
Niko Matsakis
3c67e3c8c5
add LALRPOP grammar written in itself; generates quite a lot of output
...
though -- probably need to shift to a less naive LR(1) generation
algorithm
2015-07-24 05:54:53 -04:00
Niko Matsakis
bd006f8c27
add an interesting test for an S/R conflict and patch up LALRPOP tokenizer
2015-07-24 05:54:25 -04:00
Niko Matsakis
5890485b20
Patch up tokenizer for use/where; use is_xid_start from cargo
2015-07-24 05:06:42 -04:00
Niko Matsakis
1d4c5d3efc
separate out pre/post-validation in order to properly check for
...
terminals without defined conversions; also, eliminate the default
conversion
2015-07-23 08:50:12 -04:00
Niko Matsakis
b872e3d68f
tweak error.lalrpop
2015-07-21 20:49:47 -04:00
Niko Matsakis
110db353fc
fix tyinfer test
2015-07-21 20:49:09 -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
4c39cc7f2b
Merge branch 'master' of github.com:nikomatsakis/lalrpop
2015-07-21 05:21:32 -04:00
Niko Matsakis
0be8a9388f
Merge branch 'master' of github.com:nikomatsakis/lalrpop
2015-07-21 05:19:34 -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
d4a13ba84f
Merge pull request #11 from wycats/patch-1
...
Fix typo
2015-07-20 15:17:42 -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
0ec6824eeb
fix escape test
2015-07-19 14:20:59 -04:00
Niko Matsakis
d5b2603bcb
fix minor thing with string literal spans (and add a test)
2015-07-19 14:14:40 -04:00
Niko Matsakis
09f00f7a56
test for the various kinds of ids
2015-07-19 14:08:27 -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