bluss
bf7d7ae7fa
use &str instead of String
2016-12-21 21:27:31 -08:00
Michael Woerister
3a82b0da3d
Don't try get local DefId of imported macro in rustdoc.
2016-12-19 14:24:33 -05:00
Mark-Simulacrum
1eab19dba8
Refactor ty::FnSig to privatize all fields
2016-12-05 22:22:49 -07:00
bors
c80c31a502
Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis
...
[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-12-02 15:06:36 +00:00
bors
3abaf43f77
Auto merge of #37954 - eddyb:rustdoc-2, r=alexcrichton
...
rustdoc: link to cross-crate sources directly.
Fixes #37684 by implementing proper support for getting the `Span` of definitions across crates.
In rustdoc this is used to generate direct links to the original source instead of fragile redirects.
This functionality could be expanded further for making error reporting code more uniform and seamless across crates, although at the moment there is no actual source to print, only file/line/column information.
Closes #37870 which is also "fixes" #37684 by throwing away the builtin macro docs from libcore.
After this lands, #37727 could be reverted, although it doesn't matter much either way.
2016-11-30 07:46:00 +00:00
Eduard-Mihai Burtescu
900191891f
rustdoc: link to cross-crate sources directly.
2016-11-30 04:48:56 +02:00
Eduard-Mihai Burtescu
07ff914be1
rustc: simplify AdtDef by removing the field types and ty::ivar.
2016-11-29 21:24:26 +02:00
Eduard-Mihai Burtescu
3f338eed99
rustc: remove type information from TraitDef.
2016-11-29 21:24:26 +02:00
Mark-Simulacrum
a79c80d0b0
Adds TyCtxt::require_lang_item(LangItem) to simplify lang item requires.
...
Replaces instances of tcx.lang_items.require(..) with fatal unwrap with
this method.
2016-11-28 18:09:15 -07:00
Mark-Simulacrum
bb35d50cad
Refactor TyTrait to contain a interned ExistentialPredicate slice.
...
Renames TyTrait to TyDynamic.
2016-11-28 18:09:13 -07:00
Mark-Simulacrum
64e97d9b33
Remove BuiltinBound and BuiltinBounds.
2016-11-28 06:37:08 -07:00
Mark-Simulacrum
607af7218b
Refactor BuiltinBounds to Vec<DefId> on TraitObject.
2016-11-28 06:37:08 -07:00
Mark-Simulacrum
46c7a117f8
Privatize TraitObject.principal and add a method accessor, returning Option.
2016-11-28 06:37:08 -07:00
Eduard Burtescu
da47c2e2ac
rustc_typeck: save the type cache for rustdoc and save-analysis.
2016-11-28 04:18:10 +02:00
Eduard-Mihai Burtescu
962633cdbb
rustc: embed path resolutions into the HIR instead of keeping DefMap.
2016-11-28 04:18:10 +02:00
Eduard-Mihai Burtescu
bc096549e8
rustc: desugar use a::{b,c};
into use a::b; use a::c;
in HIR.
2016-11-28 04:18:10 +02:00
Eduard Burtescu
16b5c2cfef
rustc: desugar UFCS as much as possible during HIR lowering.
2016-11-28 04:18:10 +02:00
Eduard-Mihai Burtescu
4be7786330
rustdoc: we can now assume DocContext always has a TyCtxt.
2016-11-24 01:40:56 +02:00
Eduard-Mihai Burtescu
12c5f8cb75
rustdoc: use libsyntax ast::Attribute instead of "cleaning" them.
2016-11-24 01:40:52 +02:00
Jeffrey Seyfried
a8e86f0f81
Fix fallout in rustdoc
and tests.
2016-11-21 12:16:46 +00:00
Niko Matsakis
b10b98169f
hash the contents of impl-item-ref by adding them to visitor
...
Also simplify some of the `ty::AssociatedItem` representation,
in particular by folding `has_value` into `hir::Defaultness`
2016-11-17 13:44:22 -05:00
Andy Russell
30f75e396a
do not use deprecated text for unstable docs
2016-11-13 19:00:56 -05:00
Eduard Burtescu
3f9eba1c7c
rustc: clean up lookup_item_type and remove TypeScheme.
2016-11-10 16:49:53 +02:00
Eduard Burtescu
de0ffadb67
rustc: unify and simplify managing associated items.
2016-11-10 02:06:34 +02:00
Nicholas Nethercote
00e48affde
Replace FnvHasher use with FxHasher.
...
This speeds up compilation by 3--6% across most of rustc-benchmarks.
2016-11-08 15:14:59 +11:00
Mark-Simulacrum
982a48575b
Utilize AccumulateVec to avoid heap allocations in mk_{substs, type_list, tup} calls.
2016-10-25 20:06:17 -06:00
Vadim Petrochenkov
75d6522b9a
Eliminate ty::VariantKind in favor of def::CtorKind
2016-10-04 22:22:36 +03:00
Vadim Petrochenkov
d19c16acfb
Fix cross-crate resolution of half-items created by export shadowing
2016-10-04 22:20:37 +03:00
Corey Farwell
35d214afe6
Remove redundant 'Variant' in variant names, stop reexporting.
2016-10-02 21:58:23 -04:00
Corey Farwell
88d41441f6
Migrate VariantKind
constructor to Clean
impl.
...
https://github.com/rust-lang/rust/pull/36903#discussion_r81477884
2016-10-02 21:58:22 -04:00
Corey Farwell
5b9ba4c550
Remove redundant 'Import' in variant names, stop reexporting.
2016-10-02 21:58:21 -04:00
Corey Farwell
a400cccd54
Cleanup return
statements.
2016-10-02 21:58:20 -04:00
Corey Farwell
6d0894940f
Migrate VariantKind
construction function to associated function.
2016-10-02 21:58:20 -04:00
Corey Farwell
0d0f1b4690
Rename method 'to_string' to match conventions.
2016-10-02 21:58:19 -04:00
Corey Farwell
c3bc905e5f
Remove redundant 'Type' in variant names, stop reexporting.
2016-10-02 21:58:18 -04:00
bors
ab38d52df7
Auto merge of #36885 - Manishearth:rollup, r=Manishearth
...
Rollup of 6 pull requests
- Successful merges: #36865 , #36872 , #36873 , #36877 , #36880 , #36882
- Failed merges:
2016-10-01 10:17:20 -07:00
Corey Farwell
c66c4533d1
Migrate Item ➡ ItemType function to method.
2016-09-30 15:54:53 -04:00
Jonas Schievink
cf0b7bdd0c
Call arrays "arrays" instead of "vecs" internally
2016-09-28 22:30:30 +02:00
Eduard Burtescu
a96abca2a4
rustc_metadata: replace RBML with a simple and type-safe scheme.
2016-09-20 20:08:05 +03:00
Eduard Burtescu
24aef24e1a
rustc_metadata: split the Def description of a DefId from item_children.
2016-09-20 20:08:05 +03:00
Eduard Burtescu
adddfccf2b
rustc_metadata: move all encoding/decoding helpers to methods.
2016-09-20 20:08:05 +03:00
Eduard Burtescu
ef4352fba6
rustc_metadata: group information into less tags.
2016-09-20 20:08:04 +03:00
Eduard Burtescu
8734aaa33e
rustc_metadata: move more RBML tags to auto-serialization.
2016-09-20 20:08:02 +03:00
Eduard Burtescu
02c4155d2c
rustc: remove hir::fold.
2016-09-20 20:08:00 +03:00
Eduard Burtescu
903ec52ba9
rustc: replace uses of NodeId in Def, other than closures and labels.
2016-09-20 20:08:00 +03:00
Eduard Burtescu
fc363cb482
rustc_metadata: go only through rustc_serialize in astencode.
2016-09-20 20:07:54 +03:00
Vadim Petrochenkov
f2b672d556
Refactor TyStruct
/TyEnum
/TyUnion
into TyAdt
2016-09-08 22:17:53 +03:00
bors
9627e9ef6e
Auto merge of #36266 - Sawyer47:issue-35169, r=alexcrichton
...
rustdoc: Filter more incorrect methods inherited through Deref
Old code filtered out only static methods. This code also excludes &mut self methods if there is no DerefMut implementation.
Fixes #35169
2016-09-07 12:30:03 -07:00
Piotr Jawniak
915bbdac58
rustdoc: Filter more incorrect methods inherited through Deref
...
Old code filtered out only static methods. This code also excludes
&mut self methods if there is no DerefMut implementation
2016-09-05 20:24:55 +02:00
Vadim Petrochenkov
e05e74ac83
Replace _, _
with ..
2016-09-04 12:30:33 +03:00