summary refs log tree commit diff
path: root/src/librustdoc/clean/inline.rs
AgeCommit message (Collapse)AuthorLines
2015-09-03Add an intital HIR and lowering stepNick Cameron-11/+12
2015-08-24fallout from moving def-idNiko Matsakis-15/+15
2015-08-12Replace get_item_path[-1] with get_item_namemitaa-2/+1
2015-08-06use VariantDef instead of struct_fieldsAriel Ben-Yehuda-4/+4
2015-08-06introduce an ADTDef struct for struct/enum definitionsAriel Ben-Yehuda-2/+2
2015-08-04rustc: replace def::MethodProvenance with ty::ImplOrTraitItemContainer.Eduard Burtescu-1/+1
2015-06-26rustc: switch most remaining middle::ty functions to methods.Eduard Burtescu-18/+18
2015-06-12Cleanup: rename middle::ty::sty and its variants.Eli Friedman-2/+2
Use camel-case naming, and use names which actually make sense in modern Rust.
2015-06-11Conver reborrows to .iter() calls where appropriateJoshua Landau-1/+1
2015-06-10Removed many pointless calls to *iter() and iter_mut()Joshua Landau-5/+5
2015-05-27Auto merge of #25796 - arielb1:default-assoc, r=eddybbors-3/+5
r? @eddyb Fixes #19476.
2015-05-26Auto merge of #25675 - bluss:rustdoc-assoc-types-index, r=alexcrichtonbors-2/+2
rustdoc: Associated type fixes The first commit fixes a bug with "dud" items in the search index from misrepresented `type` items in trait impl blocks. For a trait *implementation* there are typedefs which are the types for that particular trait and implementor. Skip these in the search index. There were lots of dud items in the search index due to this (search for Item, Iterator's associated type). Add a boolean to clean::TypedefItem so that it tracks whether the it is a type alias on its own, or if it's a `type` item in a trait impl. The second commit fixes a bug that made signatures and where bounds using associated types (if they were not on `Self`) incorrect. The third commit fixes so that where clauses in type alias definititons are shown. Fixes #22442 Fixes #24417 Fixes #25769
2015-05-26Implement defaults for associated typesAriel Ben-Yehuda-3/+5
2015-05-21syntax: parse `const fn` for free functions and inherent methods.Eduard Burtescu-0/+2
2015-05-21rustdoc: Skip types in impls in search indexUlrik Sverdrup-2/+2
For a trait *implementation* there are typedefs which are the types for that particular trait and implementor. Skip these in the search index. There were lots of dud items in the search index due to this (search for Item, Iterator's associated type). Add a boolean to clean::TypedefItem so that it tracks whether the it is a type alias on its own, or if it's a `type` item in a trait impl. Fixes #22442
2015-05-12rustc: rename ty::populate_implementations_for_type_if_necessary to make it ↵Eduard Burtescu-1/+1
clear that it only populates inherent impls.
2015-04-23Functional changes for associated constants. Cross-crate usage of associated ↵Sean Patrick Santos-4/+25
constants is not yet working.
2015-04-23Structural changes for associated constantsSean Patrick Santos-0/+1
Introduces new variants and types in syntax::ast, middle::ty, and middle::def.
2015-04-16rustdoc: Inline methods inhereted through DerefAlex Crichton-20/+29
Whenever a type implements Deref, rustdoc will now add a section to the "methods available" sections for "Methods from Deref<Target=Foo>", listing all the inherent methods of the type `Foo`. Closes #19190
2015-04-07rustdoc: Handle duplicate reexports listedAlex Crichton-2/+7
This ends up causing duplicate output in rustdoc. The source of these duplicates is that the item is defined in both resolve namespaces, so it's listed twice. Closes #23207
2015-04-07rustdoc: Encode ABI in all methodsAlex Crichton-2/+3
This commit ensures that the ABI of functions is propagated all the way through to the documentation. Closes #22038
2015-04-07rustdoc: Improve handling inlined associated typesAlex Crichton-2/+50
* All bounds are now discovered through the trait to be inlined. * The `?Sized` bound now renders correctly for inlined associated types. * All `QPath`s (`<A as B>::C`) instances are rendered as `A::C` where `C` is a hyperlink to the trait `B`. This should improve at least how the docs look at least. * Supertrait bounds are now separated and display as the source lists them. Closes #20727 Closes #21145
2015-04-07rustdoc: Run external traits through filtersAlex Crichton-3/+4
This ensures that all external traits are run through the same filters that the rest of the AST goes through, stripping hidden function as necessary. Closes #13698
2015-03-12rustdoc: Fix ICE with cross-crate default implsAlex Crichton-11/+30
This adds a special code path for impls which are listed as default impls to ensure that they're loaded correctly.
2015-03-11syntax: gather common fields of impl & trait items into their respective types.Eduard Burtescu-17/+1
2015-03-04Separate supertrait collection from processing a `TraitDef`. This allowsNiko Matsakis-3/+1
us to construct trait-references and do other things without forcing a full evaluation of the supertraits. One downside of this scheme is that we must invoke `ensure_super_predicates` before using any construct that might require knowing about the super-predicates.
2015-02-27Auto merge of #22765 - sanxiyn:dedup-rustdoc, r=alexcrichtonbors-0/+3
rustdoc impl item did not include default methods for local crates, but did include them for external crates. This resulted in duplicate methods. Fix so that impl item does not include default methods for external crates. Fix #22595.
2015-02-24Fix duplicate methods in rustdocSeo Sanghyeon-0/+3
2015-02-24rustc: combine partial_def_map and last_private_map into def_map.Eduard Burtescu-1/+1
2015-02-24Revert bogus rename from DefTrait to DefaultImpl.Eduard Burtescu-1/+1
2015-02-22Rename DefTrait to DefaultImplFlavio Percoco-1/+1
2015-02-12Rote changes to fix fallout throughout the compiler from splitting theNiko Matsakis-7/+13
predicates and renaming some things.
2015-02-06rustdoc: Show non-Rust ABIs on methodsTom Jakubowski-1/+2
Fix #21621
2015-02-05cleanup: replace `as[_mut]_slice()` calls with deref coercionsJorge Aparicio-2/+2
2015-01-21rollup merge of #21368: tomjakubowski/rustdoc-miscellanyAlex Crichton-7/+27
Conflicts: src/librustdoc/clean/mod.rs
2015-01-21Display negative trait implementations correctly in rustdocDiggory Blake-0/+2
Added doc test
2015-01-17rustdoc: Handle associated types on inlined implsTom Jakubowski-3/+15
Fix #21348
2015-01-17rustdoc: Separate associated types from methodsTom Jakubowski-4/+12
Fix #21142
2015-01-13Return the Vec from csearch::get_item_attrs.Ms2ger-7/+2
Using a closure unnecessarily obfuscates the code.
2015-01-06core: split into fmt::Show and fmt::StringSean McArthur-2/+2
fmt::Show is for debugging, and can and should be implemented for all public types. This trait is used with `{:?}` syntax. There still exists #[derive(Show)]. fmt::String is for types that faithfully be represented as a String. Because of this, there is no way to derive fmt::String, all implementations must be purposeful. It is used by the default format syntax, `{}`. This will break most instances of `{}`, since that now requires the type to impl fmt::String. In most cases, replacing `{}` with `{:?}` is the correct fix. Types that were being printed specifically for users should receive a fmt::String implementation to fix this. Part of #20013 [breaking-change]
2014-12-26Changes to RustDocNick Cameron-3/+2
2014-12-24rustdoc: render higher-rank trait boundsTom Jakubowski-1/+1
Fix #19915
2014-12-22Rote changes that don't care to distinguish between a fn pointer and a fn item.Niko Matsakis-1/+1
2014-12-15rollup merge of #19774: tomjakubowski/rustdoc-consts-staticsBrian Anderson-0/+22
Build `clean::ConstantItem` values in the `inline` module and pretty-print the AST for inlined const items. Doc strings are still missing from inlined constants (see #19773). Partially address #18156, #19722, #19185 Fix #15821 r? @alexcrichton
2014-12-14Parse `unsafe trait` but do not do anything with it beyond parsing and ↵Niko Matsakis-0/+1
integrating into rustdoc etc.
2014-12-14Rename FnStyle trait to Unsafety.Niko Matsakis-4/+4
2014-12-12rustdoc: Properly inline const itemsTom Jakubowski-0/+22
Build `clean::ConstantItem` values in the `inline` module and pretty-print the AST for inlined const items. Doc strings are still missing from inlined constants (see #19773). Partially address #18156, #19722, #19185 Fix #15821
2014-12-06librustdoc: remove unnecessary `as_slice()` callsJorge Aparicio-2/+2
2014-11-26rollup merge of #19272: tomjakubowski/rustdoc-sizedAlex Crichton-1/+2
Both `trait Foo for Sized?` and `<Sized? T>` are handled correctly. Fix #18515
2014-11-25Fallout from stabilizationAaron Turon-1/+1