about summary refs log tree commit diff
path: root/src/libsyntax/parse/token.rs
AgeCommit message (Collapse)AuthorLines
2013-05-14Use static string with fail!() and remove fail!(fmt!())Björn Steinbrink-1/+1
fail!() used to require owned strings but can handle static strings now. Also, it can pass its arguments to fmt!() on its own, no need for the caller to call fmt!() itself.
2013-05-12librustc: Make `self` and `static` into keywordsPatrick Walton-18/+9
2013-05-10auto merge of #6223 : alexcrichton/rust/issue-6183, r=pcwaltonbors-0/+7
Closes #6183. The first commit changes the compiler's method of treating a `for` loop, and all the remaining commits are just dealing with the fallout. The biggest fallout was the `IterBytes` trait, although it's really a whole lot nicer now because all of the `iter_bytes_XX` methods are just and-ed together. Sadly there was a huge amount of stuff that's `cfg(stage0)` gated, but whoever lands the next snapshot is going to have a lot of fun deleting all this code!
2013-05-10auto merge of #6329 : sonwow/rust/issue-6306, r=ILyoanbors-2/+2
Fix for #6306
2013-05-10syntax: Use the new `for` protocolAlex Crichton-0/+7
2013-05-10Move core::task::local_data to core::local_dataYoungsoo Son-2/+2
2013-05-09Use a specialized string interner to reduce the need for owned stringsBjörn Steinbrink-41/+41
&str can be turned into @~str on demand, using to_owned(), so for strings, we can create a specialized interner that accepts &str for intern() and find() but stores and returns @~str.
2013-05-02Remove 'Local Variable' commentsBrendan Zabarauskas-8/+0
2013-05-01auto merge of #6148 : erickt/rust/remove-drop, r=pcwaltonbors-75/+70
The drop block has been deprecated for quite some time. This patch series removes support for parsing it and all the related machinery that made drop work. As a side feature of all this, I also added the ability to annote fields in structs. This allows comments to be properly associated with an individual field. However, I didn't update `rustdoc` to integrate these comment blocks into the documentation it generates.
2013-05-01syntax: remove parse::token::{dtor,literally_dtor}Erick Tryzelaar-75/+70
2013-05-01Revert rename of Div to QuotBrendan Zabarauskas-1/+1
2013-04-28get rid of prec.rsJohn Clements-0/+28
prec.rs no longer had much to do with precedence; the token->binop function fits better in token.rs, and the one-liner defining the precedence of 'as' can go next to the other precedence stuff in ast_util.rs
2013-04-28refactoring mod.rsJohn Clements-49/+57
2013-04-27only use #[no_core] in libcoreDaniel Micay-6/+0
2013-04-19librustc: Fix botched merge. rs=mergePatrick Walton-4/+4
2013-04-19librustc: Optimize metadata::decoder::item_name.Patrick Walton-0/+22
2013-04-16added MTWT functionsJohn Clements-40/+40
2013-04-16move interner_key macroJohn Clements-10/+0
2013-04-10path -> PathJohn Clements-1/+1
2013-04-03rename Linear{Map,Set} => Hash{Map,Set}Daniel Micay-9/+9
2013-04-03hashmap: rm linear namespaceDaniel Micay-1/+1
2013-03-26syntax: Removing uses of HashMapAlex Crichton-28/+26
2013-03-22librustc: Remove the `const` declaration form everywherePatrick Walton-38/+38
2013-03-22libsyntax: Introduce the new `assert!` macro; make `assert` no longer a keywordPatrick Walton-1/+1
2013-03-22librustc: Remove `pure` from libsyntax and librustc.Patrick Walton-7/+7
2013-03-22syntax: replace uses of old deriving attribute with new oneAndrew Paseltiner-3/+3
2013-03-11Remove the log keyword (by renaming it to __log)Brian Anderson-1/+1
We can't quite remove logging from the language, but this hides the keyword.
2013-03-07add deriving_eq for tokensJohn Clements-273/+2
2013-03-03libsyntax: add &self to parser methodsErick Tryzelaar-4/+4
2013-02-27Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-1/+3
2013-02-26libsyntax: add explicit copiesErick Tryzelaar-7/+7
2013-02-26Macros now leave scopeJohn Clements-1/+3
Macro scope is now delimited by function, block, and module boundaries, except for modules that are marked with #[macro_escape], which allows macros to escape.
2013-02-26libsyntax: change binop_to_str to be pureErick Tryzelaar-1/+1
2013-02-26libsyntax: change token fns to take &TokenErick Tryzelaar-18/+18
2013-02-26libsyntax: change token::to_str to take &TokenErick Tryzelaar-2/+2
2013-02-25libsyntax: change flip_delimiter to take a &token::TokenErick Tryzelaar-2/+2
2013-02-19libsyntax: convert interner into a modern structErick Tryzelaar-2/+2
2013-02-15libsyntax: Remove move as a keyword.Luqman Aden-1/+1
2013-02-14librustc: Replace `impl Type : Trait` with `impl Trait for Type`. ↵Patrick Walton-1/+1
rs=implflipping
2013-02-13auto merge of #4922 : jbclements/rust/add-deriving-eq-to-asts, r=catamorphismbors-6/+2
r? Apply deriving_eq to the data structures in ast.rs, and get rid of the custom definitions of eq that were everywhere. resulting ast.rs is about 400 lines shorter. Also: add a few test cases and a bunch of comments. Also: change ast_ty_to_ty_cache to use node ids rather than ast::ty's. I believe this was a suggestion related to my changes, and it appears to pass all tests. Also: tiny doc fix, remove references to crate keywords.
2013-02-13Remove die!, raplace invocations with fail! Issue #4524 pt 3Nick Desaulniers-2/+2
2013-02-13deriving_eq for tokens and binopsJohn Clements-6/+1
Note that the replaced definition of equality on tokens contains a *huge* shortcut on INTERPOLATED tokens (those that contain ASTs), whereby any two INTERPOLATED tokens are considered equal. This seems like a really broken notion of equality, but it appears that the existing test cases and the compiler don't depend on it. Niko noticed this, BTW. Replace long definition of Eq on tokens and binops w
2013-02-13Commenting, test cases, cleanupJohn Clements-0/+1
2013-02-09auto merge of #4854 : thestinger/rust/oldmap, r=catamorphismbors-3/+3
2013-02-08oldmap: get rid of legacy _ref suffixesDaniel Micay-3/+3
2013-02-08Add and lex LIFETIME tokensNiko Matsakis-1/+8
cc #4846
2013-02-03oldmap: get rid of the legacy each_key methodDaniel Micay-3/+3
2013-02-03rename map -> oldmap and mark it as deprecatedDaniel Micay-1/+1
LinearMap is quite a bit faster, and is fully owned/sendable without requiring copies. The older std::map also doesn't use explicit self and relies on mutable fields.
2013-02-01Remove fail keyword from lexer & parser and clean up remaining calls toNick Desaulniers-1/+1
fail Fix merge conflicts - Issue 4524
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-2/+2