3741 Commits

Author SHA1 Message Date
varkor
b575c18992 Refactoring generic counting loops 2018-05-15 14:21:32 +01:00
varkor
007de2f896 Lift pure_wrt_drop to GenericParamDef 2018-05-15 14:21:32 +01:00
varkor
9200bdee26 Refactor generic params loops 2018-05-15 14:21:32 +01:00
varkor
4bed895cab Pull common parameters into GenericParamDef
This leads to a lot of simplifications, as most code doesn't actually need to know about the specific lifetime/type data; rather, it's concerned with properties like name, index and def_id.
2018-05-15 14:21:32 +01:00
varkor
5e89312a22 Inline get_type 2018-05-15 14:21:32 +01:00
varkor
7b45a892a4 Use GenericParamCount instead of FxHashMap 2018-05-15 14:21:31 +01:00
varkor
6f257bf26f Correct variable renaming fallout 2018-05-15 14:21:03 +01:00
varkor
0b8b14f6f5 Eliminate ty::Generics::types()
And with one final incanation, the specific kind iterators were banished from ty::Generics, never to be seen again!
2018-05-15 14:21:03 +01:00
varkor
d557ff983f Eliminate ty::Generics::lifetimes()
Begone lazy lifetime code!
2018-05-15 14:21:03 +01:00
varkor
b75f421ee9 Generalise more cases of explicit iteration of specific kinds 2018-05-15 14:21:03 +01:00
varkor
4a6c946368 Generalise cases of explicit iteration of specific kinds 2018-05-15 14:21:03 +01:00
varkor
06f0a7c89f Rename TypeParameterDef -> TypeParamDef and RegionParameterDef -> RegionParamDef 2018-05-15 14:20:19 +01:00
varkor
178a8f1139 Rename GenericParam to GenericParamDef 2018-05-15 14:20:19 +01:00
varkor
e5825c29c3 Prefer iterator to vec 2018-05-15 14:20:19 +01:00
varkor
fe0c119e7d Consolidate ty::Generics 2018-05-15 14:20:19 +01:00
bors
d5ecf70fd6 Auto merge of #50259 - GuillaumeGomez:improve-results, r=ollie27
Rustdoc improvements

Fixes #50658. (last commit)

A lot of small improvements.

r? @QuietMisdreavus
2018-05-15 05:39:35 +00:00
John Kåre Alsaker
022dff47e3 Add a Rayon thread pool 2018-05-13 01:28:20 +02:00
Guillaume Gomez
f0db2cf14e Use fullpath instead of recreating it 2018-05-12 23:44:40 +02:00
Guillaume Gomez
f2bc09e68b Fix invalid deduplication 2018-05-12 19:16:37 +02:00
Guillaume Gomez
8fab482a68 Fix items counts in search results 2018-05-12 19:16:37 +02:00
Guillaume Gomez
6a4bdda87b Reduce js files size 2018-05-12 19:16:37 +02:00
Guillaume Gomez
72b7c8d291 Remove extra span tags 2018-05-12 19:16:37 +02:00
Guillaume Gomez
9483e9b564 Handle blur on theme buttons nicely 2018-05-12 19:16:37 +02:00
Guillaume Gomez
8c80124fef Add missing description in alias items 2018-05-12 19:16:37 +02:00
Guillaume Gomez
e81b59bba8 Improve alias rendering 2018-05-12 19:16:37 +02:00
Guillaume Gomez
cf9209f872 Improve results 2018-05-12 19:16:37 +02:00
Mark Simulacrum
d7f5e1f5d1
Rollup merge of #50550 - llogiq:fmt-result, r=petrochenkov
use fmt::Result where applicable

This is a quite boring PR, but I think the type alias improves readability, so why not use it?
2018-05-12 07:32:27 -06:00
John Kåre Alsaker
fdd9787777 Introduce ConstValue and use it instead of miri's Value for constant values 2018-05-11 13:01:44 +02:00
bors
0a223d139c Auto merge of #50395 - Zoxc:small-tys, r=michaelwoerister
Optimize layout of TypeVariants

This makes references to `Slice` use thin pointers by storing the slice length in the slice itself. `GeneratorInterior` is replaced by storing the movability of generators in `TyGenerator` and the interior witness is stored in `GeneratorSubsts` (which is just a wrapper around `&'tcx Substs`, like `ClosureSubsts`). Finally the fields of `TypeAndMut` is stored inline in `TyRef`. These changes combine to reduce `TypeVariants` from 48 bytes to 24 bytes on x86_64.

r? @michaelwoerister
2018-05-10 14:14:35 +00:00
bors
c8a3ec1ce6 Auto merge of #50432 - GuillaumeGomez:fix-vec-new-search, r=QuietMisdreavus
Fix rustdoc pathes search

Fixes #50086.

Depends on #50302.

r? @QuietMisdreavus
2018-05-10 07:52:15 +00:00
bors
472541731e Auto merge of #49711 - ibabushkin:auto_trait_refactor, r=nikomatsakis
Refactor auto trait handling in librustdoc to be accessible from librustc.

These commits transfer some of the functionality introduced in https://github.com/rust-lang/rust/pull/47833 to librustc with the intention of making the tools to work with auto traits accessible to third-party code, for example [rust-semverver](https://github.com/rust-lang-nursery/rust-semverver).

Some rough edges remain, and I'm certain some of the FIXMEs introduced will need some discussion, most notably the fairly ugly overall approach to pull out the core logic into librustc, which was previously fairly tightly coupled with various bits and bobs from librustdoc.

cc @Aaron1011
2018-05-09 16:56:30 +00:00
Andre Bogus
e333725664 use fmt::Result where applicable 2018-05-09 02:01:37 +02:00
John Kåre Alsaker
c9d9c249ec Insert fields from TypeAndMut into TyRef to allow layout optimization 2018-05-08 16:21:58 +02:00
bors
715d6a98aa Auto merge of #50305 - GuillaumeGomez:fix-mod-stackoverflow, r=QuietMisdreavus
Prevent infinite recursion of modules

Fixes #50196.

r? @QuietMisdreavus
2018-05-07 23:18:12 +00:00
Guillaume Gomez
3ba7c00f94 Prevent infinite recursion of modules 2018-05-07 12:44:03 +02:00
Guillaume Gomez
d0840fd63b Fix paths search 2018-05-05 12:44:10 +02:00
bors
5d6c757268 Auto merge of #50419 - sinkuu:rustdoc_nested_impl_trait, r=QuietMisdreavus
rustdoc: Resolve nested `impl Trait`s

Fixes #50358.

Populates `cx.impl_trait_bounds` incrementally while `clean`ing generic params, so that a synthetic type-parameter can refer to previous ones.

cc #50366
2018-05-05 03:36:09 +00:00
bors
e82261dfbb Auto merge of #50413 - kennytm:rollup, r=kennytm
Rollup of 12 pull requests

Successful merges:

 - #50302 (Add query search order check)
 - #50320 (Fix invalid path generation in rustdoc search)
 - #50349 (Rename "show type declaration" to "show declaration")
 - #50360 (Clarify wordings of the `unstable_name_collision` lint.)
 - #50365 (Use two vectors in nearest_common_ancestor.)
 - #50393 (Allow unaligned reads in constants)
 - #50401 (Revert "Implement FromStr for PathBuf")
 - #50406 (Forbid constructing empty identifiers from concat_idents)
 - #50407 (Always inline simple BytePos and CharPos methods.)
 - #50416 (check if the token is a lifetime before parsing)
 - #50417 (Update Cargo)
 - #50421 (Fix ICE when using a..=b in a closure.)

Failed merges:
2018-05-03 20:45:54 +00:00
kennytm
03a0402dbf
Rollup merge of #50320 - GuillaumeGomez:fix-search-path-generation, r=QuietMisdreavus
Fix invalid path generation in rustdoc search

Fixes #50311.
2018-05-04 04:28:00 +08:00
Guillaume Gomez
a876d28b4a Fix invalid path generation in rustdoc search 2018-05-03 22:14:37 +02:00
kennytm
73042c54f5
Rollup merge of #50349 - GuillaumeGomez:rename-type-declaration-label, r=estebank
Rename "show type declaration" to "show declaration"

Fixes #50347.

r? @QuietMisdreavus
2018-05-04 02:12:46 +08:00
Shotaro Yamada
14f32f64c8 rustdoc: Resolve nested impl Traits 2018-05-03 22:34:10 +09:00
flip1995
121abd0599
make it compile again 2018-05-02 12:05:13 +02:00
Seiichi Uchida
24a6284fcd
Fix failures in rustdoc 2018-05-02 11:48:11 +02:00
Seiichi Uchida
9b3aea602c
Remove Option from the return type of Attribute::name() 2018-05-02 11:32:34 +02:00
bors
96b09e0212 Auto merge of #49982 - petrochenkov:noreex, r=alexcrichton
Remove unstable `macro_reexport`

It's subsumed by `feature(use_extern_macros)` and `pub use`

cc https://github.com/rust-lang/rust/issues/35896
closes https://github.com/rust-lang/rust/issues/29638
closes https://github.com/rust-lang/rust/issues/38951
2018-05-01 21:22:49 +00:00
Vadim Petrochenkov
300b6bb417 Remove macro_reexport
It's subsumed by `feature(use_extern_macros)` and `pub use`
2018-05-01 15:58:42 +03:00
Guillaume Gomez
135ee85aba Rename "show type declaration" to "show declaration" 2018-04-30 22:32:17 +02:00
Oliver Schneider
f45d0f3783
Removed unused dependencies on rustc_const_math 2018-04-30 18:18:33 +02:00
bors
64e6dda0bc Auto merge of #50326 - ollie27:rustdoc_cross_crate_const_link, r=GuillaumeGomez
rustdoc: Fix links to constants in external crates

r? @GuillaumeGomez
2018-04-30 10:30:14 +00:00