summary refs log tree commit diff
path: root/src/libsyntax/ast_util.rs
AgeCommit message (Collapse)AuthorLines
2013-09-24renumbered due to bug shufflingJohn Clements-5/+5
2013-09-23librustc: Change the ID visitor to use traits instead of garbage-collected ↵Patrick Walton-31/+46
functions.
2013-09-23librustc: Change fold to use traits instead of `@fn`.Patrick Walton-16/+0
2013-09-18Register new snapshotsAlex Crichton-2/+2
2013-09-16auto merge of #9187 : lkuper/rust/no-simplevisitor, r=catamorphismbors-2/+2
We don't seem to be using `SimpleVisitor` anywhere in rustc. Is there any reason to keep it around? r? anyone
2013-09-14Kill off method impls made redundant by default methods.Lindsey Kuper-39/+0
2013-09-14Get rid of unused SimpleVisitor stuff.Lindsey Kuper-2/+2
2013-09-11Properly encode/decode structural variants.SiegeLord-2/+2
2013-09-10auto merge of #9088 : nikomatsakis/rust/issue-6304-AST-tree-not-DAG, ↵bors-0/+16
r=catamorphism Ensures that each AST node has a unique id. Fixes numerous bugs in macro expansion and deriving. Add two representative tests. Fixes #7971 Fixes #6304 Fixes #8367 Fixes #8754 Fixes #8852 Fixes #2543 Fixes #7654
2013-09-10Delay assignment of node ids until after expansion. Ensures that each AST nodeNiko Matsakis-0/+16
has a unique id. Fixes numerous bugs in macro expansion and deriving. Add two representative tests. Fixes #7971 Fixes #6304 Fixes #8367 Fixes #8754 Fixes #8852 Fixes #2543 Fixes #7654
2013-09-08rustpkg: Use workcacheTim Chevalier-78/+9
rustpkg now uses the workcache library to avoid recompilation. Hooray!
2013-09-06add display_sctable fn to ast_utilJohn Clements-0/+9
2013-09-06WIP: adding mark-cancelling for macro_rulesJohn Clements-0/+10
2013-09-06expose mtwt_marksof for testingJohn Clements-0/+5
2013-09-06whitespace, reindentation, and comments onlyJohn Clements-4/+8
2013-09-06memoization for resolveJohn Clements-38/+91
2013-09-06uncomment mtwt_resolve callsJohn Clements-17/+21
2013-09-06added utility functionJohn Clements-0/+37
2013-09-06comments onlyJohn Clements-0/+2
2013-09-06add hygiene support fns, move them around.John Clements-3/+0
also adds test cases
2013-09-06rename resolve to mtwt_resolveJohn Clements-1/+1
2013-09-04stop treating char as an integer typeDaniel Micay-2/+1
Closes #7609
2013-09-03Modernized a few more types in syntax::astMarvin Löbel-149/+149
2013-09-02Renamed syntax::ast::ident -> IdentMarvin Löbel-22/+22
2013-09-01Modernized a few type names in rustc and syntaxMarvin Löbel-7/+7
2013-08-27librustc: Add support for type parameters in the middle of paths.Patrick Walton-9/+15
For example, `foo::<T>::bar::<U>`. This doesn't enforce that the type parameters are in the right positions, however.
2013-08-27Remove remnants of implicit selfNiko Matsakis-1/+1
2013-08-15Switch to new <V:Visitor> visitor (rather than @Visitor).Felix S. Klock II-72/+77
Alpha-renamed top-level visit_* functions to walk_*. (Motivation: Distinguish visit action and recursive traversal.) Abstract over `&mut self` rather than over `@mut self`. This required some acrobatics, notably the `impl<E> Visitor<E> for @mut Visitor<E>` and corresponding introduction of `@mut Visitor` and some local `let mut` bindings. Remove oldvisit reference. Added default implementations for all of the Visitor trait methods. Note that both `visit_expr_post` and `visit_ty` are no-op's by default, just like they are in `oldvisit::default_visitor`. Refactoring: extract logic to ease swapping visit for oldvisit (hopefully).
2013-08-12Forbid pub/priv where it has no effectAlex Crichton-1/+1
Closes #5495
2013-08-11libsyntax: Update from `@Object` to `@mut Object` as requiredNiko Matsakis-25/+25
2013-08-10Mass rename of .consume{,_iter}() to .move_iter()Erick Tryzelaar-1/+1
cc #7887
2013-08-09std/rustc/rustpkg/syntax: Support the `extern mod = ...` formTim Chevalier-1/+1
This commit allows you to write: extern mod x = "a/b/c"; which means rustc will search in the RUST_PATH for a package with ID a/b/c, and bind it to the name `x` if it's found. Incidentally, move get_relative_to from back::rpath into std::path
2013-08-07core: option.map_consume -> option.map_moveErick Tryzelaar-1/+1
2013-08-05Fix an unused variable warning and clean up some dead code/names.Michael Sullivan-1/+1
2013-08-03remove obsolete `foreach` keywordDaniel Micay-8/+8
this has been replaced by `for`
2013-08-02librustc: Introduce a new visitor type based on traits and port syntax to it.Patrick Walton-118/+301
This is preparation for removing `@fn`. This does *not* use default methods yet, because I don't know whether they work. If they do, a forthcoming PR will use them. This also changes the precedence of `as`.
2013-08-01migrate many `for` loops to `foreach`Daniel Micay-8/+8
2013-07-29New naming convention for ast::{node_id, local_crate, crate_node_id, ↵Michael Woerister-21/+21
blk_check_mode, ty_field, ty_method}
2013-07-22Ast spanned<T> refactoring, renaming: crate, local, blk, crate_num, crate_cfg.Michael Woerister-5/+5
`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-22new snapshotDaniel Micay-3/+0
2013-07-18Silence various warnings in bootstrap build.Felix S. Klock II-2/+0
2013-07-17test: Fix tests.Patrick Walton-1/+1
2013-07-17librustc: Remove all uses of the `Copy` bound.Patrick Walton-1/+3
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-45/+51
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-4/+6
2013-07-17Made ast::blk not use spanned<T> anymore.Michael Woerister-6/+8
2013-07-14Make TLS keys actually take up spaceAlex Crichton-1/+1
If the TLS key is 0-sized, then the linux linker is apparently smart enough to put everything at the same pointer. OSX on the other hand, will reserve some space for all of them. To get around this, the TLS key now actuall consumes space to ensure that it gets a unique pointer
2013-07-14Purge the last remnants of the old TLS apiAlex Crichton-13/+11
Closes #3273
2013-07-12auto merge of #7725 : msullivan/rust/default-methods, r=pcwaltonbors-3/+3
r?
2013-07-12auto merge of #7706 : sanxiyn/rust/qualification-lint, r=pcwaltonbors-0/+1
Fix #2551. Lint is off by default because I didn't bother to fix all of std and extra.