summary refs log tree commit diff
path: root/src/libsyntax/ext/placeholders.rs
AgeCommit message (Collapse)AuthorLines
2017-03-29Move `syntax::ext::hygiene` to `syntax_pos::hygiene`.Jeffrey Seyfried-2/+2
2017-03-25Fix ICE with nested macros in certain situations.Jeffrey Seyfried-1/+1
2017-03-22Introduce HirId, a replacement for NodeId after lowering to HIR.Michael Woerister-11/+3
HirId has a more stable representation than NodeId, meaning that modifications to one item don't influence (part of) the IDs within other items. The other part is a DefIndex for which there already is a way of stable hashing and persistence. This commit introduces the HirId type and generates a HirId for every NodeId during HIR lowering, but the resulting values are not yet used anywhere, except in consistency checks.
2017-03-10Refactor out `ast::ItemKind::MacroDef`.Jeffrey Seyfried-15/+0
2017-03-03Integrate `TokenStream`.Jeffrey Seyfried-1/+2
2017-02-12Allow using inert attributes from `proc_macro_derive`s with ↵Jeffrey Seyfried-2/+11
`#![feature(proc_macro)]`.
2016-12-22Refactor how global paths are represented (for both ast and hir).Jeffrey Seyfried-1/+1
2016-12-18Remove scope placeholders, remove method `add_macro` of `ext::base::Resolver`.Jeffrey Seyfried-36/+14
2016-11-20Move `syntax::util::interner` -> `syntax::symbol`, cleanup.Jeffrey Seyfried-2/+2
2016-10-07Cleanup `depth`s.Jeffrey Seyfried-1/+2
2016-09-15Remove `MacroRulesTT`.Jeffrey Seyfried-3/+10
2016-09-13Differentiate between monotonic and non-monotonic expansion andJeffrey Seyfried-3/+7
only assign node ids during monotonic expansion.
2016-09-13Perform node id assignment and `macros_at_scope` construction duringJeffrey Seyfried-4/+57
the `InvocationCollector` and `PlaceholderExpander` folds.
2016-09-07Implement stackless placeholder expansion.Jeffrey Seyfried-4/+7
2016-09-05Add module `ext::placeholders` with `placeholder()` and `PlaceholderExpander`.Jeffrey Seyfried-0/+172