512 Commits

Author SHA1 Message Date
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
d79c37dd92 rework Cargo.toml in tutorial to reference crates.io, and adjust publish
script to tweak version number given in the tutorial so it stays up to
date
2015-09-11 07:29:47 -04:00
Niko Matsakis
ff01f611a9 do some prep work for using a stable hashing algorithm;
unfortunately, custom hash algorithms are unstable
2015-09-11 07:28:50 -04:00
Niko Matsakis
d0fc29ee47 fix irc link 2015-09-11 07:13:42 -04:00
Niko Matsakis
f4a3158d10 adjust links 2015-09-11 07:12:48 -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
523eb8bea9 docs 2015-09-11 06:53:09 -04:00
Niko Matsakis
0932a01db0 update tutorial and readme 2015-09-11 06:50:39 -04:00
Niko Matsakis
9b3462c5e1 indicate topics yet to be covered 2015-09-11 06:40:25 -04:00
Niko Matsakis
0a8f00797f add tests 2015-09-11 06:34:39 -04:00
Niko Matsakis
3510ba7e0c add space 2015-09-11 06:32:38 -04:00
Niko Matsakis
9b556fd064 tweak wording 2015-09-11 06:30:40 -04:00
Niko Matsakis
a14a49c49f fix links 2015-09-11 06:29:49 -04:00
Niko Matsakis
4b8ff6e6a5 extend tutorial to cover macros 2015-09-11 06:29:10 -04:00
Niko Matsakis
cf73e590f2 add an example of building an AST 2015-09-11 06:08:20 -04:00
Niko Matsakis
99aa2cf5cf fix emphasis 2015-09-10 10:02:03 -04:00
Niko Matsakis
0983cece31 fix links 2015-09-10 10:00:45 -04:00
Niko Matsakis
94f378d509 Update README to mention tutorial 2015-09-10 09:57:00 -04:00
Niko Matsakis
617d06d7bd initial stab at a tutorial 2015-09-10 09:53: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
406c14e2a4 refactor ; out of the defn of Alternative 2015-09-08 10:47:57 -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
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