about summary refs log tree commit diff
path: root/src/librustc_save_analysis/lib.rs
AgeCommit message (Collapse)AuthorLines
2016-12-22save-analysis: fix ICE on partially resolved pathNick Cameron-0/+4
Occurs when we produce save-analysis before type checking is complete (due to errors).
2016-12-13rustc: Use `create_dir_racy` in save analysisAlex Crichton-2/+2
The OSX bots failed last night due a race condition in save analysis where concurrent calls to `fs::create_dir_all` conflicted with one another. This replaces the relevant function call with `fs::create_dir_racy` which is defined internally to the compiler.
2016-12-09Auto merge of #38203 - nrc:save-wr, r=eddybbors-1/+1
save-analysis: fix a few generated code errors
2016-12-06save-analysis: fix a few generated code errorsNick Cameron-1/+1
2016-12-06annotate stricter lifetimes on LateLintPass methods to allow them to forward ↵Oliver Schneider-1/+1
to a Visitor
2016-12-02Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakisbors-1/+1
[9/n] rustc: move type information out of AdtDef and TraitDef. _This is part of a series ([prev](https://github.com/rust-lang/rust/pull/37688) | [next]()) of patches designed to rework rustc into an out-of-order on-demand pipeline model for both better feature support (e.g. [MIR-based](https://github.com/solson/miri) early constant evaluation) and incremental execution of compiler passes (e.g. type-checking), with beneficial consequences to IDE support as well. If any motivation is unclear, please ask for additional PR description clarifications or code comments._ <hr> Both `AdtDef` and `TraitDef` contained type information (field types, generics and predicates) which was required to create them, preventing their use before that type information exists, or in the case of field types, *mutation* was required, leading to a variance-magicking implementation of `ivar`s. This PR takes that information out and the resulting cleaner setup could even eventually end up merged with HIR, because, just like `AssociatedItem` before it, there's no dependency on types anymore. (With one exception, variant discriminants should probably be moved into their own map later.)
2016-11-30Update the bootstrap compilerAlex Crichton-1/+0
Now that we've got a beta build, let's use it!
2016-11-29rustc: simplify AdtDef by removing the field types and ty::ivar.Eduard-Mihai Burtescu-1/+1
2016-11-28rustc_typeck: save the type cache for rustdoc and save-analysis.Eduard Burtescu-7/+22
2016-11-28rustc: embed path resolutions into the HIR instead of keeping DefMap.Eduard-Mihai Burtescu-10/+38
2016-11-23Auto merge of #37908 - nrc:save-def, r=eddybbors-1/+6
save-analysis: fix ICE on partially resolved path Occurs when we produce save-analysis before type checking is complete (due to errors).
2016-11-24Inspect def locally instead of using a methodNick Cameron-1/+6
2016-11-23save-analysis: fix ICE on partially resolved pathNick Cameron-1/+1
Occurs when we produce save-analysis before type checking is complete (due to errors).
2016-11-21Use `Symbol` instead of `InternedString` in the AST, HIR, and various other ↵Jeffrey Seyfried-4/+4
places.
2016-11-20Move `syntax::util::interner` -> `syntax::symbol`, cleanup.Jeffrey Seyfried-2/+3
2016-11-20Refactor `MetaItemKind` to use `Name`s instead of `InternedString`s.Jeffrey Seyfried-2/+2
2016-11-20Refactor away `ast::Attribute_`.Jeffrey Seyfried-1/+1
2016-11-17hash the contents of impl-item-ref by adding them to visitorNiko Matsakis-1/+1
Also simplify some of the `ty::AssociatedItem` representation, in particular by folding `has_value` into `hir::Defaultness`
2016-11-12Rollup merge of #37688 - eddyb:lazy-8, r=petrochenkovEduard-Mihai Burtescu-1/+2
[8/n] rustc: clean up lookup_item_type and remove TypeScheme. _This is part of a series ([prev](https://github.com/rust-lang/rust/pull/37676) | [next]()) of patches designed to rework rustc into an out-of-order on-demand pipeline model for both better feature support (e.g. [MIR-based](https://github.com/solson/miri) early constant evaluation) and incremental execution of compiler passes (e.g. type-checking), with beneficial consequences to IDE support as well. If any motivation is unclear, please ask for additional PR description clarifications or code comments._ <hr> * `tcx.tcache` -> `tcx.item_types` * `TypeScheme` (grouping `Ty` and `ty::Generics`) is removed * `tcx.item_types` entries no longer duplicated in `tcx.tables.node_types` * `tcx.lookup_item_type(def_id).ty` -> `tcx.item_type(def_id)` * `tcx.lookup_item_type(def_id).generics` -> `tcx.item_generics(def_id)` * `tcx.lookup_generics(def_id)` -> `tcx.item_generics(def_id)` * `tcx.lookup_{super_,}predicates(def_id)` -> `tcx.item_{super_,}predicates(def_id)`
2016-11-10rustc: clean up lookup_item_type and remove TypeScheme.Eduard Burtescu-1/+2
2016-11-10Add variants `Def::Macro` and `Namespace::MacroNS`.Jeffrey Seyfried-0/+1
2016-11-10rustc: unify and simplify managing associated items.Eduard Burtescu-42/+15
2016-11-09Rollup merge of #37644 - nrc:save-derive-span, r=eddybEduard-Mihai Burtescu-1/+5
save-analysis: don't choke on stripped doc attributes
2016-11-08Auto merge of #36843 - petrochenkov:dotstab, r=nikomatsakisbors-1/+1
Stabilize `..` in tuple (struct) patterns I'd like to nominate `..` in tuple and tuple struct patterns for stabilization. This feature is a relatively small extension to existing stable functionality and doesn't have known blockers. The feature first appeared in Rust 1.10 6 months ago. An example of use: https://github.com/rust-lang/rust/pull/36203 Closes https://github.com/rust-lang/rust/issues/33627 r? @nikomatsakis
2016-11-08save-analysis: don't choke on stripped doc attributesNick Cameron-1/+5
2016-11-03Stabilize `..` in tuple (struct) patternsVadim Petrochenkov-1/+1
2016-11-02rustc: record the target type of every adjustment.Eduard Burtescu-3/+3
2016-11-02rustc: make all read access to tcx.tables go through a method.Eduard Burtescu-2/+2
2016-10-04Turn some impossible definitions into ICEsVadim Petrochenkov-3/+7
2016-10-04Separate Def::StructCtor/Def::VariantCtor from Def::Struct/Def::VariantVadim Petrochenkov-1/+3
2016-09-20rustc: remove ImplOrTraitItemId and TraitDef's associated_type_names.Eduard Burtescu-10/+4
2016-09-20rustc_metadata: move more RBML tags to auto-serialization.Eduard Burtescu-4/+2
2016-09-20rustc_metadata: go only through rustc_serialize in astencode.Eduard Burtescu-3/+3
2016-09-19save-analysis: better 'parent' infoNick Cameron-6/+9
In particular, this fixes some bugs displaying doc URLs for method calls.
2016-09-09Auto merge of #36331 - petrochenkov:tyadt, r=eddybbors-5/+5
Refactor `TyStruct`/`TyEnum`/`TyUnion` into `TyAdt` r? @eddyb
2016-09-09Auto merge of #36324 - nrc:save-docs, r=eddybbors-8/+35
save-analysis bits and pieces
2016-09-08Refactor `TyStruct`/`TyEnum`/`TyUnion` into `TyAdt`Vadim Petrochenkov-5/+5
2016-09-07save-analysis: strip /// or whatever from doc commentsNick Cameron-1/+2
2016-09-07save-analysis: only emit type in the value for variablesNick Cameron-1/+0
2016-09-07save-analysis: tweak the type value for functionsNick Cameron-2/+2
2016-09-07save-analysis: add a `kind` tag to JSON dumpsNick Cameron-1/+1
2016-09-07save-analysis: add docs dataNick Cameron-5/+32
2016-09-04Auto merge of #36203 - petrochenkov:uvsdot, r=nrcbors-6/+7
Replace `_, _` with `..` in patterns This is how https://github.com/rust-lang/rust/issues/33627 looks in action. Looks especially nice in leftmost/rightmost positions `(first, ..)`/`(.., last)`. I haven't touched libsyntax intentionally because the feature is still unstable.
2016-09-04Auto merge of #36132 - nrc:save-std, r=@eddybbors-5/+22
Add --Zsave-analysis-api This is a save-analysis variation which can be used with libraries distributed without their source (e.g., libstd). It will allow IDEs and other tools to get info about types and create URLs to docs and source, without the unnecessary clutter of internal-only save-analysis info. I'm sure we'll iterate somewhat on the design, but this is a first draft.
2016-09-04Replace `_, _` with `..`Vadim Petrochenkov-3/+3
2016-09-04Replace `_, _, _` with `..`Vadim Petrochenkov-3/+4
2016-09-03Some better support for unions through the compilerVadim Petrochenkov-2/+3
2016-09-01save-analysis: add parent info to api dumpsNick Cameron-0/+6
The parent id is used for constructing rustdoc URLs by clients
2016-09-01Thread visibility info through save-analysis and filter save-analysis-api on it.Nick Cameron-4/+11
2016-09-01JsonApiDumperNick Cameron-1/+3