about summary refs log tree commit diff
path: root/src/libsyntax/ext/tt
AgeCommit message (Collapse)AuthorLines
2013-05-14syntax: Remove #[allow(vecs_implicitly_copyable)]Alex Crichton-34/+33
2013-05-11Warning policeTim Chevalier-2/+2
2013-05-11auto merge of #6389 : sonwow/rust/issue-3356, r=bstriebors-2/+2
Fix for #3356
2013-05-10renamed vec::from_slice to vec::to_ownedYoungsoo Son-2/+2
2013-05-09Use a specialized string interner to reduce the need for owned stringsBjörn Steinbrink-2/+2
&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-04-27only use #[no_core] in libcoreDaniel Micay-6/+0
2013-04-24Remove needless FIXME. Fixes #2811.Niko Matsakis-2/+0
2013-04-19syntax: de-mode and prepare for de-modeing rustcAlex Crichton-14/+14
2013-04-03auto merge of #5696 : thestinger/rust/hashmap, r=sanxiynbors-10/+10
This naming is free now that `oldmap` has finally been removed, so this is a search-and-replace to take advantage of that. It might as well be called `HashMap` instead of being named after the specific implementation, since there's only one. SipHash distributes keys so well that I don't think there will ever be much need to use anything but a simple hash table with open addressing. If there *is* a better way to do it, it will probably be better in all cases and can just be the default implementation. A cuckoo-hashing implementation combining a weaker hash with SipHash could be useful, but that won't be as general purpose - you would need to write a separate fast hash function specialized for the type to really take advantage of it (like taking a page from libstdc++/libc++ and just using the integer value as the "hash"). I think a more specific naming for a truly alternative implementation like that would be fine, with the nice naming reserved for the general purpose container.
2013-04-03auto merge of #5559 : jbclements/rust/change-to-tt-based-parsing, r=jbclementsbors-28/+29
Changes the parser to parse all streams into token-trees before hitting the parser proper, in preparation for hygiene. As an added bonus, it appears to speed up the parser (albeit by a totally imperceptible 1%). Also, many comments in the parser. Also, field renaming in token-trees (readme->forest, cur->stack).
2013-04-03rename Linear{Map,Set} => Hash{Map,Set}Daniel Micay-10/+10
2013-04-03hashmap: rm linear namespaceDaniel Micay-2/+2
2013-03-29librustc: Remove `fail_unless!`Patrick Walton-1/+1
2013-03-29field renamingJohn Clements-28/+29
2013-03-28Removing unused importsAlex Crichton-2/+2
2013-03-26syntax: Removing uses of HashMapAlex Crichton-14/+18
2013-03-26Remove unused imports throughoutAlex Crichton-6/+2
2013-03-22librustc: Add explicit lifetime binders and new lifetime notation in ↵Patrick Walton-1/+1
core/std/syntax/rustc
2013-03-22librustc: Remove `pure` from libsyntax and librustc.Patrick Walton-4/+4
2013-03-21back-renamed slice_DBG_BRWD, slice_V_DBG_BRWD -> slice, slice_DBG_UNIQ -> ↵Marvin Löbel-1/+1
slice_unique
2013-03-21renamed str::view -> slice_DBG_BRWDMarvin Löbel-1/+1
renamed str::slice -> slice_DBG_UNIQ changed vec slice method -> to_owned() renamed vec view method -> slice_V_DBG_BRWD
2013-03-18librustc: Make the compiler ignore purity.Patrick Walton-10/+23
For bootstrapping purposes, this commit does not remove all uses of the keyword "pure" -- doing so would cause the compiler to no longer bootstrap due to some syntax extensions ("deriving" in particular). Instead, it makes the compiler ignore "pure". Post-snapshot, we can remove "pure" from the language. There are quite a few (~100) borrow check errors that were essentially all the result of mutable fields or partial borrows of `@mut`. Per discussions with Niko I think we want to allow partial borrows of `@mut` but detect obvious footguns. We should also improve the error message when `@mut` is erroneously reborrowed.
2013-03-13librustc: Don't accept `as Trait` anymore; fix all occurrences of it.Patrick Walton-13/+19
2013-03-08syntax: Remove uses of DVecAlex Crichton-9/+9
2013-03-07librustc: Convert all uses of `assert` over to `fail_unless!`Patrick Walton-1/+1
2013-03-06removed unused abstraction over paths and value_pathsJohn Clements-0/+1
2013-03-05core: convert vec::{last,last_opt} to return referencesErick Tryzelaar-1/+1
2013-03-04Remove unused imports throughout src/Alex Crichton-6/+0
2013-03-02libsyntax: add some more explicit copies for vecs_implicitly_copyable)Erick Tryzelaar-7/+8
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-0/+2
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-0/+2
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'
2013-02-26libsyntax: add some more explicit copiesErick Tryzelaar-10/+15
2013-02-26libsyntax: remove vecs_implicitly_copyable from the syntax extensionsErick Tryzelaar-24/+30
2013-02-26libsyntax: change token::to_str to take &TokenErick Tryzelaar-2/+2
2013-02-25libsyntax: add some explicit copiesErick Tryzelaar-1/+1
2013-02-25libsyntax: convert visit to pass ty_params by referenceErick Tryzelaar-4/+9
2013-02-22libsyntax: De-mut the parser. rs=demutingPatrick Walton-4/+4
2013-02-22libsyntax: De-mut the macro parser. rs=demutingPatrick Walton-12/+12
2013-02-22libsyntax: De-mut the pipe compilerPatrick Walton-1/+1
2013-02-21librustc: De-mut some of transPatrick Walton-6/+6
2013-02-21Get rid of structural records in libsyntax and the last bit in librustc.Luqman Aden-17/+26
2013-02-19libsyntax: make enum variants take refsErick Tryzelaar-5/+6
2013-02-15libsyntax: Get rid of uses of `move` and don't parse it.Luqman Aden-14/+14
2013-02-13Remove die!, raplace invocations with fail! Issue #4524 pt 3Nick Desaulniers-3/+3
2013-02-08oldmap: get rid of legacy _ref suffixesDaniel Micay-1/+1
2013-02-07librustc: Lots of de-muting. rs=demutingPatrick Walton-68/+83
2013-02-04lines too longJohn Clements-11/+12
2013-02-04demodeing, un-gc-ingJohn Clements-26/+27
It looks to me like the string_reader and tt_reader structs are GC pointers only because they predate the modern borrow system. This commit leaves the type names string_reader and tt_reader alone (they still refer to GC-ed pointers), but internally the functions now use borrowed pointers to refer to these structures. My guess would be that it's possible to move this change outward and not use the GCed pointers at all, but that change looks like it could be a larger one. Actually, I'm delighted at how quick this change was.
2013-02-03oldmap: use &K instead of K in find and getDaniel Micay-3/+3