Niko Matsakis
|
e18dd45972
|
port the intern_tok to use regular expressions
|
2015-09-08 09:56:52 -04:00 |
|
Niko Matsakis
|
9badd1fb10
|
add support for regex literals
|
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
|
1b9317adc5
|
fix various things in intern_token codegen
|
2015-09-08 09:56:52 -04:00 |
|
Niko Matsakis
|
eaa70dc322
|
add a simple test of lowering w/ no enum token
|
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
|
fd49370ab0
|
improve test to test locations as well
|
2015-09-08 09:56:52 -04:00 |
|
Niko Matsakis
|
d7a1a4569c
|
integrate intern_token into tyinfer
|
2015-09-08 09:56:52 -04:00 |
|
Niko Matsakis
|
f35099a46b
|
make enum_token optional
|
2015-09-08 09:56:51 -04:00 |
|
Niko Matsakis
|
6b0db8d2fb
|
remove (no longer used) assumption that enum type is a nominal type
|
2015-09-08 09:56:51 -04:00 |
|
Niko Matsakis
|
305f227c4d
|
First draft at codegen for intern token
|
2015-09-08 09:56:51 -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
|
6dff1e72da
|
tweak obsolete wording
|
2015-09-08 09:56:51 -04:00 |
|
Niko Matsakis
|
78e866f0b6
|
factor out common testing code and switch to a new, clearer notation
|
2015-09-08 09:56:51 -04:00 |
|
Niko Matsakis
|
babbdd4c14
|
inject 'input and input parameters for intern tokens
|
2015-09-08 09:56:51 -04:00 |
|
Niko Matsakis
|
320f2de232
|
begin integrating intern_token into lowering pass
|
2015-09-08 09:56:34 -04:00 |
|
Will Crichton
|
7d4872f72b
|
Fixed line_col failing for positions on the last line
|
2015-09-05 23:43:27 -04:00 |
|
Niko Matsakis
|
8d8e3ecfdc
|
convert to generate a single fn with a loop+match, in hopes LLVM will
optimize it better -- it doesn't. Probably still more efficient.
|
2015-08-21 09:43:31 -04:00 |
|
Niko Matsakis
|
fbf06b0965
|
add codegen for lexer with a test
|
2015-08-21 08:25:06 -04:00 |
|
Niko Matsakis
|
032342ac95
|
rename postvalidate to token_check
|
2015-08-21 08:06:59 -04:00 |
|
Niko Matsakis
|
dc5e95c16a
|
add support for gathering up an intern token out of quoted literals
(and a simple test)
|
2015-08-20 07:45:29 -04:00 |
|
Niko Matsakis
|
fe4d74936b
|
add InternToken but don't really use it
|
2015-08-19 11:27:12 -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
|
82d2c9109f
|
Publish a new version which patches tests
|
2015-08-16 06:10:47 -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
|
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 |
|