Commit graph

127 commits

Author SHA1 Message Date
Graydon Hoare
ceac155211 For #2229, recognize 'again' in place of 'cont', final change pending snapshot. 2012-07-06 15:46:39 -07:00
Eric Holk
7b03832c95 Updating tests to use pipes. 2012-07-06 10:42:41 -07:00
Eric Holk
fa4134611d Fixing an infinite type, updating code to match new Early parser, remembering to add protocol parser. 2012-07-06 10:42:40 -07:00
Eric Holk
6806aa0e66 pingpong protocol parses, although I should probably rewrite this to use Paul's Early parser stuff. 2012-07-06 10:42:40 -07:00
Eric Holk
84434bc084 Recursively expand items, and keep expansion stack, per Paul's code review comments. 2012-07-06 10:42:40 -07:00
Eric Holk
d09bcc0131 Adding token tree nonterminals to earley parser. 2012-07-06 10:42:40 -07:00
Eric Holk
f0ef4ef81b You can have any protocol you want, provided it's pingpong.
This integrates the pipe compiler into the proto syntax extension.
2012-07-06 10:42:40 -07:00
Eric Holk
05cdda3a2c Plumbing and parsing for item-position macros. 2012-07-06 10:42:40 -07:00
Paul Stansifer
a8112f3b34 Allow soft failure of the macro parser. 2012-07-05 18:09:31 -07:00
Paul Stansifer
7f9b1fbe35 Add new syntax for interpolation and repetition, and allow the transcription of separators. 2012-07-05 18:09:31 -07:00
Paul Stansifer
62db5706e6 Start letting the parser catch interpolated ASTs. 2012-07-05 18:09:31 -07:00
Paul Stansifer
f940653720 Update the new macro demo. 2012-07-05 18:09:31 -07:00
Paul Stansifer
0c6fe6470e Macro By Example transcription of token trees with interpolations and dotdotdots. 2012-07-05 18:09:31 -07:00
Paul Stansifer
f4fb975e4e Store some span information for stride mismatches errors in MBE TT macros. 2012-07-05 18:09:31 -07:00
Paul Stansifer
534270551e Move earley_parser.rs to a more appropriate place 2012-07-05 18:09:31 -07:00
Paul Stansifer
39590d81f0 Some rearranging in perparation for MBE-style TT transcription. 2012-07-05 18:09:31 -07:00
Paul Stansifer
74c2266a06 Document matchers a little better. 2012-07-05 18:09:31 -07:00
Tim Chevalier
663b3fc89c Uncomment destructor in parser now that dtors work
Although this one is just a hack to make a class non-copyable.
(Do we want syntax for that instead?)
2012-07-05 16:11:51 -07:00
Tim Chevalier
889be71cb4 Comments only: change TODOs to FIXMEs and annotate them 2012-07-05 16:10:29 -07:00
Tim Chevalier
50d2e7e07e Mostly change TODOs to FIXMEs and annotate them
But, one change in io to implement a TODO suggestion (using a
const u8)
2012-07-05 15:06:33 -07:00
Lindsey Kuper
33334f3c43 Change 'iface' to 'trait' internally; parse trait as iface synonym 2012-07-05 11:01:43 -07:00
Gareth Daniel Smith
be0141666d convert doc-attributes to doc-comments using ./src/etc/sugarise-doc-comments.py (and manually tweaking) - for issue #2498 2012-07-04 19:18:13 -07:00
Patrick Walton
277f06dbb8 syntax: Add native module names correctly when building up the paths in the AST map 2012-07-03 18:32:47 -07:00
Brian Anderson
ae6ea068a1 Revert "Remove rule requiring non-nil block-style statements to be semi-terminated"
This reverts commit 0f5eaef5fb.
2012-07-03 17:30:25 -07:00
Brian Anderson
0f5eaef5fb Remove rule requiring non-nil block-style statements to be semi-terminated
This is a subtle rule that no longer seems to be required.
2012-07-03 17:03:52 -07:00
Graydon Hoare
3f59a4bc64 More work on #2082, remove parser/lexer support for 'crust' and 'native'. 2012-07-03 16:49:46 -07:00
Graydon Hoare
be2c92078b Change crust -> extern. 2012-07-03 16:49:46 -07:00
Graydon Hoare
debb7e4641 Switch 'native' to 'extern' (or 'foreign' in some descriptions) 2012-07-03 16:11:00 -07:00
Michael Sullivan
c854d6ebdb Remove some bogus exports. 2012-07-03 10:52:32 -07:00
Patrick Walton
f093d374ed rustc: Implement a new resolve pass behind a compile flag 2012-07-02 18:30:12 -07:00
Brian Anderson
569467eb0d Merge remote-tracking branch 'Dretch/prettydocs'
Conflicts:
	src/compiletest/errors.rs
	src/libsyntax/parse/attr.rs
	src/libsyntax/parse/comments.rs
	src/test/compile-fail/ambig_impl_unify.rs
	src/test/compile-fail/assign-super.rs
	src/test/compile-fail/bad-for-loop.rs
	src/test/compile-fail/bad-var-env-capture-in-block-arg.rs
	src/test/compile-fail/block-arg-as-stmt-with-value.rs
	src/test/compile-fail/borrowck-assign-comp-idx.rs
	src/test/compile-fail/borrowck-lend-flow.rs
	src/test/compile-fail/borrowck-loan-blocks-move-cc.rs
	src/test/compile-fail/borrowck-loan-blocks-mut-uniq.rs
	src/test/compile-fail/borrowck-loan-rcvr.rs
	src/test/compile-fail/borrowck-loan-vec-content.rs
	src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs
	src/test/compile-fail/cap-clause-with-stack-closure.rs
	src/test/compile-fail/do1.rs
	src/test/compile-fail/do2.rs
	src/test/compile-fail/empty-vec-trailing-comma.rs
	src/test/compile-fail/evec-subtyping.rs
	src/test/compile-fail/issue-1896.rs
	src/test/compile-fail/issue-2149.rs
	src/test/compile-fail/issue-2150.rs
	src/test/compile-fail/issue-2487-b.rs
	src/test/compile-fail/kindck-implicit-close-over-mut-var.rs
	src/test/compile-fail/liveness-issue-2163.rs
	src/test/compile-fail/liveness-use-in-index-lvalue.rs
	src/test/compile-fail/no-reuse-move-arc.rs
	src/test/compile-fail/no-send-res-ports.rs
	src/test/compile-fail/non-const.rs
	src/test/compile-fail/pure-higher-order.rs
	src/test/compile-fail/pure-loop-body.rs
	src/test/compile-fail/regions-addr-of-upvar-self.rs
	src/test/compile-fail/regions-escape-loop-via-vec.rs
	src/test/compile-fail/regions-scoping.rs
	src/test/compile-fail/seq-args.rs
	src/test/compile-fail/tstate-unsat-in-called-fn-expr.rs
	src/test/compile-fail/tstate-unsat-in-fn-expr.rs
	src/test/compile-fail/vec-add.rs
	src/test/compile-fail/vec-concat-bug.rs
	src/test/compile-fail/vector-no-ann.rs
2012-07-02 15:23:41 -07:00
Brian Anderson
9743757113 syntax: Support dropping argument list from for/do 2012-07-01 22:36:24 -07:00
Brian Anderson
494264711d syntax: Stop parsing old closure syntax 2012-07-01 19:19:36 -07:00
Brian Anderson
d1fc2b5995 Convert to new closure syntax 2012-07-01 19:19:32 -07:00
Brian Anderson
13a8f54538 syntax: Pretty print new closures correctly 2012-07-01 17:53:07 -07:00
Brian Anderson
3155d170ad syntax: Fix lambda parsing following 'ret' 2012-06-30 21:20:36 -07:00
Brian Anderson
ed834f0629 syntax: Add support for new lambda syntax 2012-06-30 16:01:52 -07:00
Brian Anderson
0293a31b68 Remove old sugared call syntax 2012-06-30 16:01:52 -07:00
Brian Anderson
a3382b6f26 Eliminate usages of old sugared call syntax 2012-06-30 16:01:49 -07:00
Brian Anderson
8b2491160d syntax: Pretty-print 'do' correctly 2012-06-30 14:24:24 -07:00
Gareth Daniel Smith
0b653ab953 initial draft of fix for issue #2498:
1. make /// ... and //! ... and /** ... */ and /*! ... */ into sugar for #[doc = ...] attributes.
2. add a script in etc/ to help converting doc-attributes to doc-comments
3. add some functions to core::str to help with (1)
2012-06-30 11:54:54 +01:00
Michael Sullivan
98e161f00e Switch the compiler over to using ~[] notation instead of []/~. Closes #2759. 2012-06-29 17:41:45 -07:00
Michael Sullivan
3bf5fef0e5 Refactor syntax exts some. Don't ever emit bare vectors. 2012-06-29 14:38:33 -07:00
Michael Sullivan
7aa43b2599 Make fmt use a bitmask instead of a vector of flags. Closes #1993. 2012-06-28 23:36:00 -07:00
Michael Sullivan
810677efb5 Parse ~[...] as [...]/~. Same for @ and &. Closes #2747. 2012-06-28 17:10:06 -07:00
Michael Sullivan
e9382ef1ac Have #fmt use str::concat to build up the string instead of using binary +. Closes #2746. 2012-06-28 16:30:05 -07:00
Michael Sullivan
d91e310982 Don't use literal info from the original source when pretty printing expanded ASTs. 2012-06-28 15:33:15 -07:00
Eric Holk
59221e9ac8 replace more vector + (issue #2719) 2012-06-28 13:52:23 -07:00
Eric Holk
ae06546bbf Replace more vector + (issue #2719) 2012-06-27 23:09:51 -07:00
Michael Sullivan
3297d465ca Have the syntax extension ast builders reserve the extra node ids required for overloading. Closes #2732. 2012-06-27 16:19:10 -07:00