about summary refs log tree commit diff
path: root/src/librustc/hir/map
AgeCommit message (Collapse)AuthorLines
2018-07-26Improve a few vectors - calculate capacity or build from iteratorsljedrz-1/+1
2018-07-20Only methods are fn-like, not other associated itemsOliver Schneider-1/+7
2018-07-18Implement existential typesOliver Schneider-2/+13
2018-07-16ItemKindcsmoe-57/+57
2018-07-16ForeignItemKindcsmoe-3/+3
2018-07-16TyKindcsmoe-0/+1
2018-07-16ExprKindcsmoe-7/+7
2018-07-16VariantKindcsmoe-1/+1
2018-07-14Remove most of `PartialEq` impls from AST and HIR structuresVadim Petrochenkov-6/+5
2018-07-08Remove fallback to parent modules from lexical resolutionVadim Petrochenkov-29/+7
2018-07-03Avoid sorting the item_ids array the StableHash impl of hir::Mod.Michael Woerister-0/+8
2018-07-01call it `hir::VisibilityKind` instead of `hir::Visibility_:*`Zack M. Davis-5/+5
It was pointed out in review that the glob-exported underscore-suffixed convention for `Spanned` HIR nodes is no longer preferred: see February 2016's #31487 for AST's migration away from this style towards properly namespaced NodeKind enums. This concerns #51968.
2018-06-30in which hir::Visibility recalls whence it came (i.e., becomes Spanned)Zack M. Davis-6/+8
There are at least a couple (and plausibly even three) diagnostics that could use the spans of visibility modifiers in order to be reliably correct (rather than hacking and munging surrounding spans to try to infer where the visibility keyword must have been). We follow the naming convention established by the other `Spanned` HIR nodes: the "outer" type alias gets the "prime" node-type name, the "inner" enum gets the name suffixed with an underscore, and the variant names are prefixed with the prime name and `pub use` exported from here (from HIR). Thanks to veteran reviewer Vadim Petrochenkov for suggesting this uniform approach. (A previous draft, based on the reasoning that `Visibility::Inherited` should not have a span, tried to hack in a named `span` field on `Visibility::Restricted` and a positional field on `Public` and `Crate`. This was ... not so uniform.)
2018-06-30Auto merge of #51862 - estebank:lifetime-spans, r=nikomatsakisbors-1/+28
Point to lifetime spans on lifetime errors
2018-06-30Auto merge of #51762 - petrochenkov:oh-hi-mark, r=oli-obkbors-8/+3
hygiene: Implement transparent marks and use them for call-site hygiene in proc-macros Fixes https://github.com/rust-lang/rust/issues/50050
2018-06-30Auto merge of #51806 - oli-obk:lowering_cleanups1, r=cramertjbors-17/+30
Lowering cleanups [1/N]
2018-06-30Fortify dummy span checkingVadim Petrochenkov-8/+3
2018-06-28Extend support to `get_generics` for all `NodeItem`sEsteban Küber-1/+8
2018-06-28Point at lifetimes instead of def span for E0195Esteban Küber-1/+21
2018-06-28Fix rebaseVadim Petrochenkov-3/+3
2018-06-28Use `Ident`s for associated item definitions in HIRVadim Petrochenkov-16/+16
Remove emulation of hygiene with gensyms
2018-06-28Use `Ident`s in a number of structures in HIRVadim Petrochenkov-2/+2
Namely: labels, type parameters, bindings in patterns, parameter names in functions without body. All of these do not need hygiene after lowering to HIR, only span locations.
2018-06-28Use `Ident`s for lifetimes in HIRVadim Petrochenkov-15/+14
2018-06-27Don't use `println` in the compilerOliver Schneider-1/+1
2018-06-27Generate `DefId`s for the impl trait of `async` functionsOliver Schneider-6/+16
2018-06-27Generate `DefId`s for impl Trait in the def_collectorOliver Schneider-8/+7
2018-06-27Don't generate a new NodeId for universal impl TraitOliver Schneider-3/+7
2018-06-23hygiene: More descriptive names for things involved in late hygienic name ↵Vadim Petrochenkov-13/+18
resolution
2018-06-21PathParameters -> GenericArgs fixesTaylor Cramer-1/+1
2018-06-21Async methodsTaylor Cramer-13/+39
2018-06-21async await desugaring and testsTaylor Cramer-4/+36
2018-06-21Parse async fn header.Without Boats-23/+18
This is gated on edition 2018 & the `async_await` feature gate. The parser will accept `async fn` and `async unsafe fn` as fn items. Along the same lines as `const fn`, only `async unsafe fn` is permitted, not `unsafe async fn`.The parser will not accept `async` functions as trait methods. To do a little code clean up, four fields of the function type struct have been merged into the new `FnHeader` struct: constness, asyncness, unsafety, and ABI. Also, a small bug in HIR printing is fixed: it previously printed `const unsafe fn` as `unsafe const fn`, which is grammatically incorrect.
2018-06-20Lift attrs into hir::GenericParamvarkor-4/+1
2018-06-20Introduce ParamName and use it in place of LifetimeNamevarkor-7/+4
2018-06-20Take advantage of the lifetime refactoringvarkor-8/+1
2018-06-20Lift name into GenericParamvarkor-2/+2
2018-06-20Handle lifetimes in NodeGenericParam alsovarkor-3/+6
2018-06-20Rename structures in astvarkor-3/+3
2018-06-20Refactor generic parameters in rustdoc/cleanvarkor-11/+4
2018-06-20Rename DefPathData::LifetimeDef to LifetimeParamvarkor-4/+4
2018-06-20Refactor ast::GenericParam as a structvarkor-18/+11
2018-06-20Refactor hir::GenericParam as a structvarkor-38/+43
2018-06-20Rename ast::GenericParam and ast::GenericArgvarkor-3/+3
It's so confusing to have everything having the same name, at least while refactoring.
2018-06-19Add `fn fn_decl` to `Hir`, for looking up the `FnDecl` of a body owner.Felix S. Klock II-0/+42
2018-06-13Various cleanupsOliver Schneider-7/+1
2018-06-07Add existential type definitonsOliver Schneider-35/+25
2018-06-01merge UNNECESSARY_EXTERN_CRATE and UNUSED_EXTERN_CRATESNiko Matsakis-1/+1
2018-05-30rustc: don't visit lifetime parameters through visit_lifetime.Eduard-Mihai Burtescu-5/+9
2018-05-28scrap `find_node_for_hir_id` in favor of `hir_to_node_id`Zack M. Davis-8/+0
Michael Woerister pointed out that `hir_to_node_id` (introduced in August 2017's 28ddd7a4e) supersedes the functionality of `find_node_for_hir_id` (just a hash lookup compared to that linear search).
2018-05-26Use `Ident`s for fields in HIRVadim Petrochenkov-3/+3