Oliver Middleton
0cb6a1fad3
rustdoc: Fix names of items in cross crate reexported modules
...
For renamed reexports the new name should be used.
2017-05-22 02:05:16 +01:00
Eduard-Mihai Burtescu
ea1c6df81e
rustc: stop interning CodeExtent, it's small enough.
2017-05-13 17:43:32 +03:00
achernyak
35812d1746
resolved merge conflicts
2017-05-09 17:23:41 -05:00
Niko Matsakis
196c98d314
remove use of ast_ty_to_ty_cache from librustdoc
2017-05-03 21:26:28 -04:00
achernyak
c72a16b8e2
fn_arg_names
2017-05-03 09:01:49 -05:00
Corey Farwell
e0bfd19add
Rollup merge of #41693 - est31:anon_params_removal, r=eddyb
...
Removal pass for anonymous parameters
Removes occurences of anonymous parameters from the
rustc codebase, as they are to be deprecated.
See issue #41686 and RFC 1685.
r? @frewsxcv
2017-05-02 09:09:59 -04:00
est31
d290849a23
Removal pass for anonymous parameters
...
Removes occurences of anonymous parameters from the
rustc codebase, as they are to be deprecated.
See issue #41686 and RFC 1685.
2017-05-02 05:55:20 +02:00
Niko Matsakis
c7dc39dbf0
intern CodeExtents
...
Make a `CodeExtent<'tcx>` be something allocated in an arena
instead of an index into the `RegionMaps`.
2017-04-30 17:02:59 -04:00
Eduard-Mihai Burtescu
612bb1f54e
rustc: rename some of the queries to match tcx methods.
2017-04-24 15:20:52 +03:00
Corey Farwell
24e8158213
Rollup merge of #41310 - eddyb:demand-const-eval, r=nikomatsakis
...
[on-demand] Turn monomorphic_const_eval into a proper query, not just a cache.
The error definitions and reporting logic, alongside with `eval_length` were moved to `librustc`.
Both local and cross-crate constant evaluation is on-demand now, but the latter is only used for `enum` discriminants, to replace the manual insertion into the cache which was done when decoding variants.
r? @nikomatsakis
2017-04-17 23:21:18 -04:00
Corey Farwell
4ae25a60ba
Rollup merge of #41280 - QuietMisdreavus:rustdoc-toc, r=GuillaumeGomez
...
rustdoc: add a list of headings to the sidebar
It's another misdreavus rustdoc PR, which means it's time for Bikeshed City once again! `:3`
In an effort to aid navigation in long documentation pages, this PR adds a listing of headings to the sidebars of pages where such headings exist. For example, for structs, links to their fields, inherent methods, and trait implementations are available where applicable.
Examples:
* Modules/Crate roots

* Enums

* Primitives

* Traits

* Structs

Open questions:
* Right now, these kinds of pages (and also unions) are the only pages that will receive the name header - pages for functions, constants, macros, etc, won't have the corresponding name in their sidebar. Should I print the name regardless and only add table-of-contents links for pages that have them? This would make them match, for example, a struct with no public fields, no methods, and no trait implementations. The latter would still have a "Struct MyStruct" line above the module contents, with no header links to speak of, whereas a function wouldn't even have "Function my\_function".
* This is only a header listing, but there has been requests to include a more-complete listing of fields/methods/traits/etc, for example in #41123 .
2017-04-17 13:26:20 -04:00
QuietMisdreavus
27bfbd56f0
rustdoc: add a list of headings to the sidebar
2017-04-17 10:41:13 -05:00
Eduard-Mihai Burtescu
63064ec190
rustc: expose monomorphic const_eval through on-demand.
2017-04-16 01:31:06 +03:00
Corey Farwell
5aa96024e3
Rollup merge of #41249 - GuillaumeGomez:rustdoc-render, r=steveklabnik,frewsxcv
...
Fix invalid associated type rendering in rustdoc
Fixes #41036 .
r? @rust-lang/docs
2017-04-14 17:41:05 -04:00
Guillaume Gomez
dd7dfe56a9
Fix invalid associated type rendering in rustdoc
2017-04-12 18:14:54 +02:00
Niko Matsakis
761808ef40
just panic in rustdoc if we encounter a subtype predicate
...
These are not user expressible anyhow.
2017-04-11 20:32:48 -04:00
Niko Matsakis
58609ef879
add Subtype predicate
2017-04-11 20:32:46 -04:00
Esteban Küber
b83352e44c
Introduce TyErr independent from TyInfer
...
Add a `TyErr` type to represent unknown types in places where
parse errors have happened, while still able to build the AST.
Initially only used to represent incorrectly written fn arguments and
avoid "expected X parameters, found Y" errors when called with the
appropriate amount of parameters. We cannot use `TyInfer` for this as
`_` is not allowed as a valid argument type.
Example output:
```rust
error: expected one of `:` or `@`, found `,`
--> file.rs:12:9
|
12 | fn bar(x, y: usize) {}
| ^
error[E0061]: this function takes 2 parameters but 3 parameters were supplied
--> file.rs:19:9
|
12 | fn bar(x, y) {}
| --------------- defined here
...
19 | bar(1, 2, 3);
| ^^^^^^^ expected 2 parameters
```
2017-04-02 09:45:57 -07:00
Corey Farwell
d49f86901c
Rollup merge of #40587 - GuillaumeGomez:rustdoc-const-display, r=frewsxcv
...
Fix invalid debug display for associated consts
Fixes #40568 .
r? @rust-lang/docs
cc @SergioBenitez
2017-03-19 20:51:13 -04:00
Corey Farwell
a04c7de2cf
Rollup merge of #40564 - GuillaumeGomez:rustdoc-const, r=frewsxcv
...
Fix const not displayed in rustdoc
Fixes #40331 .
r? @rust-lang/docs
2017-03-19 10:18:15 -04:00
Guillaume Gomez
5364acb418
Fix invalid debug display for associated consts
2017-03-17 00:27:36 +01:00
Guillaume Gomez
9b892745ad
Fix const not displayed in rustdoc
2017-03-16 02:15:10 +01:00
Jeffrey Seyfried
68c1cc68b4
Refactor Attribute to use Path and TokenStream instead of MetaItem.
2017-03-14 04:03:43 +00:00
Corey Farwell
fda3f98746
Rollup merge of #39944 - GuillaumeGomez:associated-consts, r=frewsxcv
...
Improve associated constant rendering in rustdoc
Before:
<img width="1440" alt="screen shot 2017-02-19 at 00 30 51" src="https://cloud.githubusercontent.com/assets/3050060/23097697/caeed80e-f63a-11e6-98c2-5d27e4efd76d.png ">
After:
<img width="1440" alt="screen shot 2017-02-19 at 00 30 39" src="https://cloud.githubusercontent.com/assets/3050060/23097698/cfb4874e-f63a-11e6-80cf-ffbf5c5c6162.png ">
cc @SergioBenitez
r? @rust-lang/docs
2017-02-28 22:55:28 -05:00
Guillaume Gomez
5ac7a035af
Put the const type and value into <code>
2017-02-26 18:55:07 +01:00
Eduard-Mihai Burtescu
91374f8fe4
rustc: combine BareFnTy and ClosureTy into FnSig.
2017-02-25 17:47:15 +02:00
Eduard Burtescu
4649f7387e
rustc_typeck: lift CrateCtxt to TyCtxt.
2017-02-25 17:07:59 +02:00
Eduard-Mihai Burtescu
e8d01ea4c7
rustc: store type parameter defaults outside of ty::Generics.
2017-02-25 17:07:59 +02:00
Jimmy Cuadra
1fa9dbc00e
Use functional transformations on the option instead of matching.
2017-02-11 10:00:56 -08:00
Jimmy Cuadra
c603839d5f
rustdoc: Only include a stability span if needed.
2017-02-11 04:16:13 -08:00
Niko Matsakis
b26120db11
make lifetimes that only appear in return type early-bound
...
This is the full and proper fix for #32330 . This also makes some effort
to give a nice error message (as evidenced by the `ui` test), sending
users over to the tracking issue for a full explanation.
2017-02-05 16:30:03 -05:00
Corey Farwell
4f8ce9efb9
Rollup merge of #39009 - canndrew:default-unit-warnings, r=nikomatsakis
...
Add warning for () to ! switch
With feature(never_type) enabled diverging type variables will default to `!` instead of `()`. This can cause breakages where a trait is resolved on such a type.
This PR emits a future-compatibility warning when it sees this happen.
2017-02-05 09:14:39 -05:00
Andrew Cann
2cc84df44c
Add warning for () to ! switch
2017-02-03 18:48:15 +08:00
Guillaume Gomez
62fb7fc54a
Switch logic to Span instead of HashMap
2017-02-03 11:08:20 +01:00
Vadim Petrochenkov
ffba0cea62
Merge ty::TyBox into ty::TyAdt
2017-01-30 23:14:15 +03:00
Eduard-Mihai Burtescu
9a0af1638a
rustc: remove unused bounds field from RegionParameterDef.
2017-01-28 02:56:46 +02:00
Eduard-Mihai Burtescu
c5befdc630
rustc: always keep an explicit lifetime in trait objects.
2017-01-28 02:56:46 +02:00
Eduard-Mihai Burtescu
0682a75f44
rustc: clean up the style of middle::resolve_lifetime.
2017-01-28 02:56:46 +02:00
Eduard-Mihai Burtescu
7a2a669bb7
rustc: always include elidable lifetimes in HIR types.
2017-01-28 02:56:46 +02:00
bors
23a94697c2
Auto merge of #39158 - petrochenkov:bounds, r=nikomatsakis
...
Bounds parsing refactoring 2
See https://github.com/rust-lang/rust/pull/37511 for previous discussion.
cc @matklad
Relaxed parsing rules:
- zero bounds after `:` are allowed in all contexts.
- zero predicates are allowed after `where`.
- trailing separator `,` is allowed after predicates in `where` clauses not followed by `{`.
Other parsing rules:
- trailing separator `+` is still allowed in all bound lists.
Code is also cleaned up and tests added.
I haven't touched parsing of trait object types yet, I'll do it later.
2017-01-27 01:27:12 +00:00
Eduard-Mihai Burtescu
45c8c5678a
rustc: rename TyCtxt's map field to hir.
2017-01-26 13:41:28 +02:00
Vadim Petrochenkov
b795abeb1d
Refactor parsing of generic arguments/parameters and where clauses
2017-01-24 22:56:02 +03:00
Vadim Petrochenkov
66ef5f2bb5
Rename ObjectSum into TraitObject in AST/HIR
2017-01-17 10:41:44 +03:00
Vadim Petrochenkov
2efe865d22
AST/HIR: Merge ObjectSum and PolyTraitRef
2017-01-17 01:52:47 +03:00
Oliver Middleton
f48f3d7584
rustdoc: Give primitive types stability attributes
...
This is especially important for i128/u128 to make it clear they are
unstable in the docs.
2017-01-15 09:08:29 +00:00
Eduard-Mihai Burtescu
85a4a192c7
rustc: keep track of tables everywhere as if they were per-body.
2017-01-06 22:23:29 +02:00
bors
05f4a75eba
Auto merge of #38414 - estebank:doc-dissambiguate, r=steveklabnik
...
Rustdoc: disambiguate Implementors when the type name is not unique
Presentation [goes from](https://doc.rust-lang.org/stable/std/iter/trait.ExactSizeIterator.html#implementors ):
<img width="492" alt="" src="https://cloud.githubusercontent.com/assets/1606434/21276752/b2b50474-c387-11e6-96e1-9766851da269.png ">
to:
<img width="787" alt="" src="https://cloud.githubusercontent.com/assets/1606434/21276763/bb37f6b0-c387-11e6-8596-9163cb254674.png ">
on cases where there're multiple implementors with the same name.
Fixes #37762 .
2017-01-04 17:11:02 +00:00
est31
85ec09187c
Make rustdoc aware of the primitive i128 type
...
Many thanks to ollie27 for spotting all the places.
2016-12-30 15:17:27 +01:00
est31
9e99213831
Compilation fixes
2016-12-30 15:17:27 +01:00
Simonas Kazlauskas
9aad2d551e
Add a way to retrieve constant value in 128 bits
...
Fixes rebase fallout, makes code correct in presence of 128-bit constants.
This commit includes manual merge conflict resolution changes from a rebase by @est31.
2016-12-30 15:17:26 +01:00