about summary refs log tree commit diff
path: root/src/libsyntax/util
AgeCommit message (Collapse)AuthorLines
2014-02-19librustc: Remove unique vector patterns from the language.Patrick Walton-1/+7
Preparatory work for removing unique vectors from the language, which is itself preparatory work for dynamically sized types.
2014-02-14Expand ItemDecorator extensions in all contextsSteven Fackler-1/+7
Now that fold_item can return multiple items, this is pretty trivial. It also recursively expands generated items so ItemDecorators can generate items that are tagged with ItemDecorators! Closes #4913
2014-02-14Refactored ast_map and friends, mainly to have Paths without storing them.Eduard Burtescu-9/+9
2014-02-11Move replace and swap to std::mem. Get rid of std::utilEdward Wang-4/+4
Also move Void to std::any, move drop to std::mem and reexport in prelude.
2014-02-08Fixed error starting with uppercasemr.Shu-1/+1
Error messages cleaned in librustc/middle Error messages cleaned in libsyntax Error messages cleaned in libsyntax more agressively Error messages cleaned in librustc more aggressively Fixed affected tests Fixed other failing tests Last failing tests fixed
2014-02-07Removed @self and @Trait.Eduard Burtescu-2/+2
2014-02-03syntax: Remove usage of io_error in testsAlex Crichton-9/+9
2014-02-02librustc: Remove `@str` from the languagePatrick Walton-1/+1
2014-02-02libsyntax: Remove `@str` from the internerPatrick Walton-37/+80
2014-02-02libsyntax: Fix tests.Patrick Walton-2/+2
2014-02-02librustc: Stop using `@str` for source.Patrick Walton-11/+11
2014-02-02libsyntax: Introduce an `InternedString` type to reduce `@str` in thePatrick Walton-0/+11
compiler and use it for attributes
2014-01-21Remove unnecessary parentheses.Huon Wilson-1/+1
2014-01-18Rename iterators for consistencyPalmer Cox-5/+5
Rename existing iterators to get rid of the Iterator suffix and to give them names that better describe the things being iterated over.
2014-01-09libsyntax: Renamed types, traits and enum variants to CamelCase.Eduard Burtescu-5/+5
2014-01-07'borrowed pointer' -> 'reference'Brian Anderson-1/+1
2014-01-03libsyntax: De-`@mut` `Interner::vect`Patrick Walton-19/+31
2014-01-03libsyntax: De-`@mut` the interner mapPatrick Walton-10/+15
2014-01-03librustc: De-`@mut` the parse sessionPatrick Walton-3/+3
2014-01-02libsyntax: Fix test and merge fallout.Patrick Walton-1/+1
2013-12-08Remove dead codesKiet Tran-1/+1
2013-11-28Register new snapshotsAlex Crichton-4/+4
2013-11-26auto merge of #10670 : eddyb/rust/node-u32, r=alexcrichtonbors-18/+20
### Rationale There is no reason to support more than 2³² nodes or names at this moment, as compiling something that big (even without considering the quadratic space usage of some analysis passes) would take at least **64GB**. Meanwhile, some can't (or barely can) compile rustc because it requires almost **1.5GB**. ### Potential problems Can someone confirm this doesn't affect metadata (de)serialization? I can't tell myself, I know nothing about it. ### Results Some structures have a size reduction of 25% to 50%: [before](https://gist.github.com/luqmana/3a82a51fa9c86d9191fa) - [after](https://gist.github.com/eddyb/5a75f8973d3d8018afd3). Sadly, there isn't a massive change in the memory used for compiling stage2 librustc (it doesn't go over **1.4GB** as [before](http://huonw.github.io/isrustfastyet/mem/), but I can barely see the difference). However, my own testcase (previously peaking at **1.6GB** in typeck) shows a reduction of **200**-**400MB**.
2013-11-27Shink NodeId, CrateNum, Name and Mrk down to 32 bits on x64.Eduard Burtescu-18/+20
2013-11-26Clean up SmallVector use a bitSteven Fackler-79/+27
2013-11-26Support multiple item macrosSteven Fackler-0/+28
Closes #4375
2013-11-26Add SmallVector to libsyntaxSteven Fackler-0/+213
2013-11-26test: Remove all remaining non-procedure uses of `do`.Patrick Walton-8/+8
2013-11-19libsyntax: Change all uses of `&fn` to `||`.Patrick Walton-1/+1
2013-10-04Remove specific errors for very old obsolete syntaxBenjamin Herr-3/+0
Replaces existing tests for removed obsolete-syntax errors with tests for the resulting regular errors, adds a test for each of the removed parser errors to make sure that obsolete forms don't start working again, removes some obsolete/superfluous tests that were now failing. Deletes some amount of dead code in the parser, also includes some small changes to parser error messages to accomodate new tests.
2013-09-29Remove all usage of @ast::CrateAlex Crichton-2/+2
2013-09-06added string_to_ttsJohn Clements-0/+6
2013-09-06added gensym_copy mechanism to ensure sharing of pointers in the internerJohn Clements-8/+55
this makes comparisons constant-time, and enables spelling-comparison of identifiers, crucial in many parts of resolve.
2013-09-06add hygiene support fns, move them around.John Clements-8/+7
also adds test cases
2013-09-03Modernized a few more types in syntax::astMarvin Löbel-3/+3
2013-09-02Renamed syntax::ast::ident -> IdentMarvin Löbel-1/+1
2013-08-03remove obsolete `foreach` keywordDaniel Micay-2/+2
this has been replaced by `for`
2013-08-01migrate many `for` loops to `foreach`Daniel Micay-2/+2
2013-07-25syntax: Fix #6416 by aborting on errors after test parse.Graydon Hoare-5/+22
2013-07-22Ast spanned<T> refactoring, renaming: crate, local, blk, crate_num, crate_cfg.Michael Woerister-1/+1
`crate => Crate` `local => Local` `blk => Block` `crate_num => CrateNum` `crate_cfg => CrateConfig` Also, Crate and Local are not wrapped in spanned<T> anymore.
2013-07-18librustc: Forbid `&` pointers (other than `&'static`) inside `@` boxes.Patrick Walton-1/+1
This makes custom borrowing implementations for custom smart pointers sound.
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-4/+8
2013-06-28librustc: Rename Const to FreezePatrick Walton-1/+1
2013-06-25great renaming propagation: syntaxCorey Richardson-8/+2
2013-06-23vec: remove BaseIter implementationDaniel Micay-2/+2
I removed the `static-method-test.rs` test because it was heavily based on `BaseIter` and there are plenty of other more complex uses of static methods anyway.
2013-06-16Add copies to type params with Copy boundNiko Matsakis-3/+3
2013-06-13Use @str instead of @~str in libsyntax and librustc. Fixes #5048.Huon Wilson-41/+41
This almost removes the StringRef wrapper, since all strings are Equiv-alent now. Removes a lot of `/* bad */ copy *`'s, and converts several things to be &'static str (the lint table and the intrinsics table). There are many instances of .to_managed(), unfortunately.
2013-06-06add test cases for fold traversing macrosJohn Clements-0/+78
2013-06-05add hygiene support functionsJohn Clements-1/+2
2013-06-05interner just uses uints, not idents with syntax contextJohn Clements-4/+14