Commit Graph

440 Commits

Author SHA1 Message Date
Nick Cameron
da1f7731f6 rustdoc: remove the ! from macro URLs and titles 2016-08-18 15:40:56 +12:00
Eduard Burtescu
9453d9b8ad rustc: remove ParamSpace from Substs. 2016-08-17 06:32:00 +03:00
Eduard Burtescu
6f5e455c2d rustc: split GenericPredicates of a method from its parent predicates. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
3e74e5bffe rustc: split Generics of a method from its parent Generics. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
c1cfd58cbd rustc: remove SelfSpace from ParamSpace. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
4158673ad7 rustc: reduce Substs and Generics to a simple immutable API. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
4b25f08512 rustc: move trait objects from TraitRef to ExistentialTraitRef. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
77dc61b5c6 rustc: force all raw accesses to VecPerParamSpace through as_full_slice. 2016-08-17 05:50:57 +03:00
Eduard Burtescu
e314636b86 rustc: use Vec instead of VecPerParamSpace for ty::GenericPredicates. 2016-08-17 05:50:57 +03:00
Andrew Cann
fadabe08f5 Rename empty/bang to never
Split Ty::is_empty method into is_never and is_uninhabited
2016-08-13 21:37:09 +08:00
Andrew Cann
ed02344fbc Remove obsolete divergence related stuff
Replace FnOutput with Ty
Replace FnConverging(ty) with ty
Purge FnDiverging, FunctionRetTy::NoReturn and FunctionRetTy::None
2016-08-13 21:37:09 +08:00
Andrew Cann
9f9f8567eb Fix rustdoc after rebase 2016-08-13 21:37:09 +08:00
Eduard Burtescu
ef11d4e3c7 rustc: add TyAnon (impl Trait) to the typesystem. 2016-08-12 06:43:34 +03:00
Eduard Burtescu
f0baec691f syntax: add anonymized type syntax, i.e. impl TraitA+TraitB. 2016-08-12 06:43:34 +03:00
petrochenkov
08f0f7c54a Substitute private type aliases in rustdoc 2016-08-11 00:32:07 +03:00
Michael Woerister
d5a5149617 Move caching of HIR-inlining into CStore in order to avoid duplicating inlined HIR. 2016-08-01 04:09:12 -04:00
cgswords
5553901146 Adressed PR comments. 2016-07-25 14:27:10 -07:00
cgswords
a5e5ea1646 General MetaItem encapsulation rewrites. 2016-07-25 14:27:10 -07:00
bors
3dbbe2f716 Auto merge of #34684 - oli-obk:eval_rustdoc_array_len, r=alexcrichton
evaluate the array length of fixed size array types in rustdoc

mitgates #34579

to fix it we'd need an expression simplifier.

r? @steveklabnik

cc @Osspial
2016-07-13 16:27:30 -07:00
Oliver Schneider
9d33ce58b1 evaluate the array length of fixed size array types in rustdoc 2016-07-13 10:35:58 +02:00
Vadim Petrochenkov
2859f8bf39 Add tests + Fix rustdoc regression + Fix rebase 2016-07-08 12:42:57 +03:00
Vadim Petrochenkov
9c05fb29d2 Merge PatKind::QPath into PatKind::Path in HIR 2016-07-08 12:42:57 +03:00
Vadim Petrochenkov
49ea3d48a2 Remove unnecessary accessor function VariantDefData::kind 2016-07-08 12:42:57 +03:00
bors
d1e5e3ab43 Auto merge of #34587 - ollie27:rustdoc_prim_titles, r=steveklabnik
rustdoc: Remove paths from primitive page <title> tags

Currently primitive pages have a title like "std::u8 - Rust" this changes
it to "u8 - Rust" as "std::u8" is the name of a module not a primitive
type.
2016-07-05 20:16:40 -07:00
Oliver Middleton
76f22f4de6 rustdoc: Remove paths from primitive page <title> tags
Currently primitive pages have a title like "std::u8 - Rust" this changes
it to "u8 - Rust" as "std::u8" is the name of a module not a primitive
type.
2016-06-30 23:22:16 +01:00
Jeffrey Seyfried
2fda7d4a51 Rollup merge of #34105 - ollie27:rustdoc_derived, r=alexcrichton
rustdoc: Remove Derived Implementations title

As far as I know whether a trait was derived or not does not change the
public API so there is no need to include this information in the docs.

This title currently just adds an extra divide in the list of trait
implementations which I don't think needs to be there.
2016-06-29 00:33:30 +00:00
Jonathan Turner
2829fbc638 Address comments and fix travis warning 2016-06-23 08:07:35 -04:00
Jonathan Turner
6ae3502134 Move errors from libsyntax to its own crate 2016-06-23 08:07:35 -04:00
bors
2940eb54bd Auto merge of #34232 - ollie27:rustdoc_inline, r=alexcrichton
rustdoc: Don't inline #[doc(hidden)] pub use

Currently if a `#[doc(hidden)] pub use` item is inlined the `hidden`
attribute is ignored so the item can appear in the docs. By never inlining
such imports, they can be stripped.

An example in `std` is [`__OsLocalKeyInner`](https://doc.rust-lang.org/nightly/std/thread/struct.__OsLocalKeyInner.html) which clearly should not be documented.
2016-06-14 05:04:38 -07:00
Oliver Middleton
a7c467418f rustdoc: Don't inline #[doc(hidden)] pub use
Currently if a `#[doc(hidden)] pub use` item is inlined the `hidden`
attribute is ignored so the item can appear in the docs. By never inlining
such imports, they can be stripped.
2016-06-11 23:00:42 +01:00
Vadim Petrochenkov
ee4e55398b Introduce TyCtxt::expect_def/expect_resolution helpers and use them where possible 2016-06-10 01:03:54 +03:00
Oliver Middleton
cc18104034 rustdoc: Remove Derived Implementations title
As far as I know whether a trait was derived or not does not change the
public API so there is no need to include this information in the docs.

This title currently just adds an extra divide in the list of trait
implementations which I don't think needs to be there.
2016-06-05 23:50:18 +01:00
Eduard Burtescu
bcec7a5848 rustc: add ReErased to be used by trait selection, MIR and trans. 2016-06-05 13:58:51 +03:00
Niko Matsakis
08034eb1a5 add Issue32330 warning marker to bound regions
This indicates whether this `BoundRegion` will change from late to early
bound when issue 32330 is fixed. It also indicates the function on
which the lifetime is declared.
2016-05-31 19:41:25 -04:00
Vadim Petrochenkov
216f5fba04 Separate bindings from other patterns in HIR 2016-05-28 00:54:29 +03:00
Vadim Petrochenkov
d69aeaf662 Implement .. in tuple (struct) patterns 2016-05-26 11:11:58 +03:00
bors
9743c661b0 Auto merge of #33710 - Manishearth:rollup, r=Manishearth
Rollup of 5 pull requests

- Successful merges: #33656, #33666, #33673, #33675, #33695
- Failed merges:
2016-05-18 05:04:26 -07:00
Manish Goregaokar
7a759d7ab6 Rollup merge of #33656 - GuillaumeGomez:lifetime_bound, r=steveklabnik
Add lifetime's bounds in doc generation

Fixes #33653

![screenshot from 2016-05-15 15 30 38](https://cloud.githubusercontent.com/assets/3050060/15274445/024dbd5c-1ab2-11e6-9387-274301a05627.png)

r? @steveklabnik
2016-05-18 14:07:44 +05:30
Vadim Petrochenkov
aad347c4f7 Remove hir::Ident 2016-05-16 22:25:08 +03:00
bors
e87cd7e380 Auto merge of #33505 - petrochenkov:self, r=nrc
Remove ExplicitSelf from HIR

`self` argument is already kept in the argument list and can be retrieved from there if necessary, so there's no need for the duplication.
The same changes can be applied to AST, I'll make them in the next breaking batch.
The first commit also improves parsing of method declarations and fixes https://github.com/rust-lang/rust/issues/33413.

r? @eddyb
2016-05-15 23:14:52 -07:00
Guillaume Gomez
391ae7f37a Add lifetime's bounds in doc generation 2016-05-15 15:29:44 +02:00
Vadim Petrochenkov
766f9b5a2f Remove ExplicitSelf from HIR 2016-05-14 13:26:40 +03:00
Oliver Middleton
538de73f5b rustdoc: Fix missing type parameters on impls 2016-05-12 20:08:33 +01:00
Eduard Burtescu
3a3013613a rustc: Remove the unnecessary ast_ty_to_ty_cache. 2016-05-11 04:14:58 +03:00
Eduard Burtescu
20652162ca rustc: More interning for data used in Ty<'tcx>. 2016-05-11 04:14:58 +03:00
Eduard Burtescu
f8ea24edc8 rustc: Avoid free functions taking &TyCtxt and &InferCtxt. 2016-05-11 04:14:58 +03:00
Georg Brandl
6100b70b98 rustdoc: do not strip blanket impls in crate of origin
In `impl<T> Trait for T`, the blanket type parameters `T` were
recognized as "local" and "not exported", so these impls were
thrown out.

Now we check if they are generic, and keep them in that case.

Fixes: #29503
2016-05-09 16:50:47 +02:00
bors
8e414e0e3f Auto merge of #33091 - sanxiyn:unused-trait-import-3, r=nrc
Warn unused trait imports, rebased

Rebase of #30021.

Fix #25730.
2016-05-08 04:50:27 -07:00
bors
5158f3b282 Auto merge of #33138 - arielb1:sized-shortcut, r=nikomatsakis
Short-cut `T: Sized` trait selection for ADTs

Basically avoids all nested obligations when checking whether an ADT is sized - this speeds up typeck by ~15%

The refactoring fixed #32963, but I also want to make `Copy` not object-safe (will commit that soon).

Fixes #33201

r? @nikomatsakis
2016-05-06 06:21:25 -07:00
Ariel Ben-Yehuda
238e4ee104 fixes 2016-05-05 01:59:22 +03:00