mirror of
https://github.com/rust-lang/rust.git
synced 2025-04-17 06:26:55 +00:00
Auto merge of #115078 - camelid:tydef-to-alias, r=aDotInTheVoid,GuillaumeGomez
rustdoc: Rename typedef to type alias This matches the name used by the [Rust Reference][1], which is also what people usually call these items. [1]: https://doc.rust-lang.org/reference/items/type-aliases.html r? `@GuillaumeGomez`
This commit is contained in:
commit
9bd60a60ce
@ -80,9 +80,9 @@ pub(crate) fn try_inline(
|
||||
clean::UnionItem(build_union(cx, did))
|
||||
}
|
||||
Res::Def(DefKind::TyAlias { .. }, did) => {
|
||||
record_extern_fqn(cx, did, ItemType::Typedef);
|
||||
record_extern_fqn(cx, did, ItemType::TypeAlias);
|
||||
build_impls(cx, did, attrs_without_docs, &mut ret);
|
||||
clean::TypedefItem(build_type_alias(cx, did))
|
||||
clean::TypeAliasItem(build_type_alias(cx, did))
|
||||
}
|
||||
Res::Def(DefKind::Enum, did) => {
|
||||
record_extern_fqn(cx, did, ItemType::Enum);
|
||||
@ -287,7 +287,7 @@ fn build_union(cx: &mut DocContext<'_>, did: DefId) -> clean::Union {
|
||||
clean::Union { generics, fields }
|
||||
}
|
||||
|
||||
fn build_type_alias(cx: &mut DocContext<'_>, did: DefId) -> Box<clean::Typedef> {
|
||||
fn build_type_alias(cx: &mut DocContext<'_>, did: DefId) -> Box<clean::TypeAlias> {
|
||||
let predicates = cx.tcx.explicit_predicates_of(did);
|
||||
let type_ = clean_middle_ty(
|
||||
ty::Binder::dummy(cx.tcx.type_of(did).instantiate_identity()),
|
||||
@ -296,7 +296,7 @@ fn build_type_alias(cx: &mut DocContext<'_>, did: DefId) -> Box<clean::Typedef>
|
||||
None,
|
||||
);
|
||||
|
||||
Box::new(clean::Typedef {
|
||||
Box::new(clean::TypeAlias {
|
||||
type_,
|
||||
generics: clean_ty_generics(cx, cx.tcx.generics_of(did), predicates),
|
||||
item_type: None,
|
||||
|
@ -1219,7 +1219,7 @@ fn clean_trait_item<'tcx>(trait_item: &hir::TraitItem<'tcx>, cx: &mut DocContext
|
||||
None,
|
||||
);
|
||||
AssocTypeItem(
|
||||
Box::new(Typedef {
|
||||
Box::new(TypeAlias {
|
||||
type_: clean_ty(default, cx),
|
||||
generics,
|
||||
item_type: Some(item_type),
|
||||
@ -1264,7 +1264,7 @@ pub(crate) fn clean_impl_item<'tcx>(
|
||||
None,
|
||||
);
|
||||
AssocTypeItem(
|
||||
Box::new(Typedef { type_, generics, item_type: Some(item_type) }),
|
||||
Box::new(TypeAlias { type_, generics, item_type: Some(item_type) }),
|
||||
Vec::new(),
|
||||
)
|
||||
}
|
||||
@ -1461,7 +1461,7 @@ pub(crate) fn clean_middle_assoc_item<'tcx>(
|
||||
|
||||
if tcx.defaultness(assoc_item.def_id).has_value() {
|
||||
AssocTypeItem(
|
||||
Box::new(Typedef {
|
||||
Box::new(TypeAlias {
|
||||
type_: clean_middle_ty(
|
||||
ty::Binder::dummy(
|
||||
tcx.type_of(assoc_item.def_id).instantiate_identity(),
|
||||
@ -1480,7 +1480,7 @@ pub(crate) fn clean_middle_assoc_item<'tcx>(
|
||||
}
|
||||
} else {
|
||||
AssocTypeItem(
|
||||
Box::new(Typedef {
|
||||
Box::new(TypeAlias {
|
||||
type_: clean_middle_ty(
|
||||
ty::Binder::dummy(
|
||||
tcx.type_of(assoc_item.def_id).instantiate_identity(),
|
||||
@ -2617,7 +2617,11 @@ fn clean_maybe_renamed_item<'tcx>(
|
||||
cx.current_type_aliases.remove(&def_id);
|
||||
}
|
||||
}
|
||||
TypedefItem(Box::new(Typedef { type_: rustdoc_ty, generics, item_type: Some(ty) }))
|
||||
TypeAliasItem(Box::new(TypeAlias {
|
||||
type_: rustdoc_ty,
|
||||
generics,
|
||||
item_type: Some(ty),
|
||||
}))
|
||||
}
|
||||
ItemKind::Enum(ref def, generics) => EnumItem(Enum {
|
||||
variants: def.variants.iter().map(|v| clean_variant(v, cx)).collect(),
|
||||
|
@ -530,8 +530,8 @@ impl Item {
|
||||
pub(crate) fn is_ty_method(&self) -> bool {
|
||||
self.type_() == ItemType::TyMethod
|
||||
}
|
||||
pub(crate) fn is_typedef(&self) -> bool {
|
||||
self.type_() == ItemType::Typedef
|
||||
pub(crate) fn is_type_alias(&self) -> bool {
|
||||
self.type_() == ItemType::TypeAlias
|
||||
}
|
||||
pub(crate) fn is_primitive(&self) -> bool {
|
||||
self.type_() == ItemType::Primitive
|
||||
@ -799,7 +799,7 @@ pub(crate) enum ItemKind {
|
||||
EnumItem(Enum),
|
||||
FunctionItem(Box<Function>),
|
||||
ModuleItem(Module),
|
||||
TypedefItem(Box<Typedef>),
|
||||
TypeAliasItem(Box<TypeAlias>),
|
||||
OpaqueTyItem(OpaqueTy),
|
||||
StaticItem(Static),
|
||||
ConstantItem(Constant),
|
||||
@ -832,7 +832,7 @@ pub(crate) enum ItemKind {
|
||||
/// The bounds may be non-empty if there is a `where` clause.
|
||||
TyAssocTypeItem(Generics, Vec<GenericBound>),
|
||||
/// An associated type in a trait impl or a provided one in a trait declaration.
|
||||
AssocTypeItem(Box<Typedef>, Vec<GenericBound>),
|
||||
AssocTypeItem(Box<TypeAlias>, Vec<GenericBound>),
|
||||
/// An item that has been stripped by a rustdoc pass
|
||||
StrippedItem(Box<ItemKind>),
|
||||
KeywordItem,
|
||||
@ -857,7 +857,7 @@ impl ItemKind {
|
||||
ExternCrateItem { .. }
|
||||
| ImportItem(_)
|
||||
| FunctionItem(_)
|
||||
| TypedefItem(_)
|
||||
| TypeAliasItem(_)
|
||||
| OpaqueTyItem(_)
|
||||
| StaticItem(_)
|
||||
| ConstantItem(_)
|
||||
@ -891,7 +891,7 @@ impl ItemKind {
|
||||
| ModuleItem(_)
|
||||
| ExternCrateItem { .. }
|
||||
| FunctionItem(_)
|
||||
| TypedefItem(_)
|
||||
| TypeAliasItem(_)
|
||||
| OpaqueTyItem(_)
|
||||
| StaticItem(_)
|
||||
| ConstantItem(_)
|
||||
@ -2230,7 +2230,7 @@ pub(crate) struct PathSegment {
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
pub(crate) struct Typedef {
|
||||
pub(crate) struct TypeAlias {
|
||||
pub(crate) type_: Type,
|
||||
pub(crate) generics: Generics,
|
||||
/// `type_` can come from either the HIR or from metadata. If it comes from HIR, it may be a type
|
||||
|
@ -55,7 +55,7 @@ pub(crate) trait DocFolder: Sized {
|
||||
ExternCrateItem { src: _ }
|
||||
| ImportItem(_)
|
||||
| FunctionItem(_)
|
||||
| TypedefItem(_)
|
||||
| TypeAliasItem(_)
|
||||
| OpaqueTyItem(_)
|
||||
| StaticItem(_)
|
||||
| ConstantItem(_)
|
||||
|
@ -389,7 +389,7 @@ impl<'a, 'tcx> DocFolder for CacheBuilder<'a, 'tcx> {
|
||||
match *item.kind {
|
||||
clean::StructItem(..)
|
||||
| clean::EnumItem(..)
|
||||
| clean::TypedefItem(..)
|
||||
| clean::TypeAliasItem(..)
|
||||
| clean::TraitItem(..)
|
||||
| clean::TraitAliasItem(..)
|
||||
| clean::FunctionItem(..)
|
||||
|
@ -29,7 +29,7 @@ pub(crate) enum ItemType {
|
||||
Struct = 3,
|
||||
Enum = 4,
|
||||
Function = 5,
|
||||
Typedef = 6,
|
||||
TypeAlias = 6,
|
||||
Static = 7,
|
||||
Trait = 8,
|
||||
Impl = 9,
|
||||
@ -75,7 +75,7 @@ impl<'a> From<&'a clean::Item> for ItemType {
|
||||
clean::UnionItem(..) => ItemType::Union,
|
||||
clean::EnumItem(..) => ItemType::Enum,
|
||||
clean::FunctionItem(..) => ItemType::Function,
|
||||
clean::TypedefItem(..) => ItemType::Typedef,
|
||||
clean::TypeAliasItem(..) => ItemType::TypeAlias,
|
||||
clean::OpaqueTyItem(..) => ItemType::OpaqueTy,
|
||||
clean::StaticItem(..) => ItemType::Static,
|
||||
clean::ConstantItem(..) => ItemType::Constant,
|
||||
@ -115,7 +115,7 @@ impl From<DefKind> for ItemType {
|
||||
DefKind::Struct => Self::Struct,
|
||||
DefKind::Union => Self::Union,
|
||||
DefKind::Trait => Self::Trait,
|
||||
DefKind::TyAlias { .. } => Self::Typedef,
|
||||
DefKind::TyAlias { .. } => Self::TypeAlias,
|
||||
DefKind::TraitAlias => Self::TraitAlias,
|
||||
DefKind::Macro(kind) => match kind {
|
||||
MacroKind::Bang => ItemType::Macro,
|
||||
@ -156,7 +156,7 @@ impl ItemType {
|
||||
ItemType::Union => "union",
|
||||
ItemType::Enum => "enum",
|
||||
ItemType::Function => "fn",
|
||||
ItemType::Typedef => "type",
|
||||
ItemType::TypeAlias => "type",
|
||||
ItemType::Static => "static",
|
||||
ItemType::Trait => "trait",
|
||||
ItemType::Impl => "impl",
|
||||
|
@ -235,7 +235,7 @@ struct AllTypes {
|
||||
traits: FxHashSet<ItemEntry>,
|
||||
macros: FxHashSet<ItemEntry>,
|
||||
functions: FxHashSet<ItemEntry>,
|
||||
typedefs: FxHashSet<ItemEntry>,
|
||||
type_aliases: FxHashSet<ItemEntry>,
|
||||
opaque_tys: FxHashSet<ItemEntry>,
|
||||
statics: FxHashSet<ItemEntry>,
|
||||
constants: FxHashSet<ItemEntry>,
|
||||
@ -255,7 +255,7 @@ impl AllTypes {
|
||||
traits: new_set(100),
|
||||
macros: new_set(100),
|
||||
functions: new_set(100),
|
||||
typedefs: new_set(100),
|
||||
type_aliases: new_set(100),
|
||||
opaque_tys: new_set(100),
|
||||
statics: new_set(100),
|
||||
constants: new_set(100),
|
||||
@ -279,7 +279,7 @@ impl AllTypes {
|
||||
ItemType::Trait => self.traits.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::Macro => self.macros.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::Function => self.functions.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::Typedef => self.typedefs.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::TypeAlias => self.type_aliases.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::OpaqueTy => self.opaque_tys.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::Static => self.statics.insert(ItemEntry::new(new_url, name)),
|
||||
ItemType::Constant => self.constants.insert(ItemEntry::new(new_url, name)),
|
||||
@ -317,8 +317,8 @@ impl AllTypes {
|
||||
if !self.functions.is_empty() {
|
||||
sections.insert(ItemSection::Functions);
|
||||
}
|
||||
if !self.typedefs.is_empty() {
|
||||
sections.insert(ItemSection::TypeDefinitions);
|
||||
if !self.type_aliases.is_empty() {
|
||||
sections.insert(ItemSection::TypeAliases);
|
||||
}
|
||||
if !self.opaque_tys.is_empty() {
|
||||
sections.insert(ItemSection::OpaqueTypes);
|
||||
@ -374,7 +374,7 @@ impl AllTypes {
|
||||
print_entries(f, &self.attribute_macros, ItemSection::AttributeMacros);
|
||||
print_entries(f, &self.derive_macros, ItemSection::DeriveMacros);
|
||||
print_entries(f, &self.functions, ItemSection::Functions);
|
||||
print_entries(f, &self.typedefs, ItemSection::TypeDefinitions);
|
||||
print_entries(f, &self.type_aliases, ItemSection::TypeAliases);
|
||||
print_entries(f, &self.trait_aliases, ItemSection::TraitAliases);
|
||||
print_entries(f, &self.opaque_tys, ItemSection::OpaqueTypes);
|
||||
print_entries(f, &self.statics, ItemSection::Statics);
|
||||
@ -1237,7 +1237,7 @@ fn render_deref_methods(
|
||||
.iter()
|
||||
.find_map(|item| match *item.kind {
|
||||
clean::AssocTypeItem(box ref t, _) => Some(match *t {
|
||||
clean::Typedef { item_type: Some(ref type_), .. } => (type_, &t.type_),
|
||||
clean::TypeAlias { item_type: Some(ref type_), .. } => (type_, &t.type_),
|
||||
_ => (&t.type_, &t.type_),
|
||||
}),
|
||||
_ => None,
|
||||
@ -2035,7 +2035,7 @@ pub(crate) enum ItemSection {
|
||||
Statics,
|
||||
Traits,
|
||||
Functions,
|
||||
TypeDefinitions,
|
||||
TypeAliases,
|
||||
Unions,
|
||||
Implementations,
|
||||
TypeMethods,
|
||||
@ -2067,7 +2067,7 @@ impl ItemSection {
|
||||
Statics,
|
||||
Traits,
|
||||
Functions,
|
||||
TypeDefinitions,
|
||||
TypeAliases,
|
||||
Unions,
|
||||
Implementations,
|
||||
TypeMethods,
|
||||
@ -2093,7 +2093,7 @@ impl ItemSection {
|
||||
Self::Unions => "unions",
|
||||
Self::Enums => "enums",
|
||||
Self::Functions => "functions",
|
||||
Self::TypeDefinitions => "types",
|
||||
Self::TypeAliases => "types",
|
||||
Self::Statics => "statics",
|
||||
Self::Constants => "constants",
|
||||
Self::Traits => "traits",
|
||||
@ -2123,7 +2123,7 @@ impl ItemSection {
|
||||
Self::Unions => "Unions",
|
||||
Self::Enums => "Enums",
|
||||
Self::Functions => "Functions",
|
||||
Self::TypeDefinitions => "Type Definitions",
|
||||
Self::TypeAliases => "Type Aliases",
|
||||
Self::Statics => "Statics",
|
||||
Self::Constants => "Constants",
|
||||
Self::Traits => "Traits",
|
||||
@ -2154,7 +2154,7 @@ fn item_ty_to_section(ty: ItemType) -> ItemSection {
|
||||
ItemType::Union => ItemSection::Unions,
|
||||
ItemType::Enum => ItemSection::Enums,
|
||||
ItemType::Function => ItemSection::Functions,
|
||||
ItemType::Typedef => ItemSection::TypeDefinitions,
|
||||
ItemType::TypeAlias => ItemSection::TypeAliases,
|
||||
ItemType::Static => ItemSection::Statics,
|
||||
ItemType::Constant => ItemSection::Constants,
|
||||
ItemType::Trait => ItemSection::Traits,
|
||||
|
@ -198,7 +198,7 @@ pub(super) fn print_item(
|
||||
clean::StructItem(..) => "Struct ",
|
||||
clean::UnionItem(..) => "Union ",
|
||||
clean::EnumItem(..) => "Enum ",
|
||||
clean::TypedefItem(..) => "Type Definition ",
|
||||
clean::TypeAliasItem(..) => "Type Alias ",
|
||||
clean::MacroItem(..) => "Macro ",
|
||||
clean::ProcMacroItem(ref mac) => match mac.kind {
|
||||
MacroKind::Bang => "Macro ",
|
||||
@ -273,7 +273,7 @@ pub(super) fn print_item(
|
||||
clean::StructItem(ref s) => item_struct(buf, cx, item, s),
|
||||
clean::UnionItem(ref s) => item_union(buf, cx, item, s),
|
||||
clean::EnumItem(ref e) => item_enum(buf, cx, item, e),
|
||||
clean::TypedefItem(ref t) => item_typedef(buf, cx, item, t),
|
||||
clean::TypeAliasItem(ref t) => item_type_alias(buf, cx, item, t),
|
||||
clean::MacroItem(ref m) => item_macro(buf, cx, item, m),
|
||||
clean::ProcMacroItem(ref m) => item_proc_macro(buf, cx, item, m),
|
||||
clean::PrimitiveItem(_) => item_primitive(buf, cx, item),
|
||||
@ -343,7 +343,7 @@ fn item_module(w: &mut Buffer, cx: &mut Context<'_>, item: &clean::Item, items:
|
||||
ItemType::Static => 8,
|
||||
ItemType::Trait => 9,
|
||||
ItemType::Function => 10,
|
||||
ItemType::Typedef => 12,
|
||||
ItemType::TypeAlias => 12,
|
||||
ItemType::Union => 13,
|
||||
_ => 14 + ty as u8,
|
||||
}
|
||||
@ -1217,8 +1217,8 @@ fn item_opaque_ty(
|
||||
.unwrap();
|
||||
}
|
||||
|
||||
fn item_typedef(w: &mut Buffer, cx: &mut Context<'_>, it: &clean::Item, t: &clean::Typedef) {
|
||||
fn write_content(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, t: &clean::Typedef) {
|
||||
fn item_type_alias(w: &mut Buffer, cx: &mut Context<'_>, it: &clean::Item, t: &clean::TypeAlias) {
|
||||
fn write_content(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, t: &clean::TypeAlias) {
|
||||
wrap_item(w, |w| {
|
||||
write!(
|
||||
w,
|
||||
|
@ -82,7 +82,7 @@ pub(super) fn print_sidebar(cx: &Context<'_>, it: &clean::Item, buffer: &mut Buf
|
||||
clean::PrimitiveItem(_) => sidebar_primitive(cx, it),
|
||||
clean::UnionItem(ref u) => sidebar_union(cx, it, u),
|
||||
clean::EnumItem(ref e) => sidebar_enum(cx, it, e),
|
||||
clean::TypedefItem(_) => sidebar_typedef(cx, it),
|
||||
clean::TypeAliasItem(_) => sidebar_type_alias(cx, it),
|
||||
clean::ModuleItem(ref m) => vec![sidebar_module(&m.items)],
|
||||
clean::ForeignTypeItem => sidebar_foreign_type(cx, it),
|
||||
_ => vec![],
|
||||
@ -100,7 +100,7 @@ pub(super) fn print_sidebar(cx: &Context<'_>, it: &clean::Item, buffer: &mut Buf
|
||||
|| it.is_union()
|
||||
|| it.is_enum()
|
||||
|| it.is_mod()
|
||||
|| it.is_typedef()
|
||||
|| it.is_type_alias()
|
||||
{
|
||||
(
|
||||
match *it.kind {
|
||||
@ -230,7 +230,7 @@ fn sidebar_primitive<'a>(cx: &'a Context<'_>, it: &'a clean::Item) -> Vec<LinkBl
|
||||
}
|
||||
}
|
||||
|
||||
fn sidebar_typedef<'a>(cx: &'a Context<'_>, it: &'a clean::Item) -> Vec<LinkBlock<'a>> {
|
||||
fn sidebar_type_alias<'a>(cx: &'a Context<'_>, it: &'a clean::Item) -> Vec<LinkBlock<'a>> {
|
||||
let mut items = vec![];
|
||||
sidebar_assoc_items(cx, it, &mut items);
|
||||
items
|
||||
@ -334,7 +334,7 @@ fn sidebar_deref_methods<'a>(
|
||||
if let Some((target, real_target)) =
|
||||
impl_.inner_impl().items.iter().find_map(|item| match *item.kind {
|
||||
clean::AssocTypeItem(box ref t, _) => Some(match *t {
|
||||
clean::Typedef { item_type: Some(ref type_), .. } => (type_, &t.type_),
|
||||
clean::TypeAlias { item_type: Some(ref type_), .. } => (type_, &t.type_),
|
||||
_ => (&t.type_, &t.type_),
|
||||
}),
|
||||
_ => None,
|
||||
|
@ -499,7 +499,7 @@ function preLoadCss(cssUrl) {
|
||||
block("static", "static", "Statics");
|
||||
block("trait", "traits", "Traits");
|
||||
block("fn", "functions", "Functions");
|
||||
block("type", "types", "Type Definitions");
|
||||
block("type", "types", "Type Aliases");
|
||||
block("foreigntype", "foreign-types", "Foreign Types");
|
||||
block("keyword", "keywords", "Keywords");
|
||||
block("traitalias", "trait-aliases", "Trait Aliases");
|
||||
|
@ -311,7 +311,7 @@ fn from_clean_item(item: clean::Item, tcx: TyCtxt<'_>) -> ItemEnum {
|
||||
StaticItem(s) => ItemEnum::Static(s.into_tcx(tcx)),
|
||||
ForeignStaticItem(s) => ItemEnum::Static(s.into_tcx(tcx)),
|
||||
ForeignTypeItem => ItemEnum::ForeignType,
|
||||
TypedefItem(t) => ItemEnum::Typedef(t.into_tcx(tcx)),
|
||||
TypeAliasItem(t) => ItemEnum::TypeAlias(t.into_tcx(tcx)),
|
||||
OpaqueTyItem(t) => ItemEnum::OpaqueTy(t.into_tcx(tcx)),
|
||||
ConstantItem(c) => ItemEnum::Constant(c.into_tcx(tcx)),
|
||||
MacroItem(m) => ItemEnum::Macro(m.source),
|
||||
@ -787,10 +787,10 @@ pub(crate) fn from_macro_kind(kind: rustc_span::hygiene::MacroKind) -> MacroKind
|
||||
}
|
||||
}
|
||||
|
||||
impl FromWithTcx<Box<clean::Typedef>> for Typedef {
|
||||
fn from_tcx(typedef: Box<clean::Typedef>, tcx: TyCtxt<'_>) -> Self {
|
||||
let clean::Typedef { type_, generics, item_type: _ } = *typedef;
|
||||
Typedef { type_: type_.into_tcx(tcx), generics: generics.into_tcx(tcx) }
|
||||
impl FromWithTcx<Box<clean::TypeAlias>> for TypeAlias {
|
||||
fn from_tcx(type_alias: Box<clean::TypeAlias>, tcx: TyCtxt<'_>) -> Self {
|
||||
let clean::TypeAlias { type_, generics, item_type: _ } = *type_alias;
|
||||
TypeAlias { type_: type_.into_tcx(tcx), generics: generics.into_tcx(tcx) }
|
||||
}
|
||||
}
|
||||
|
||||
@ -827,7 +827,7 @@ impl FromWithTcx<ItemType> for ItemKind {
|
||||
Union => ItemKind::Union,
|
||||
Enum => ItemKind::Enum,
|
||||
Function | TyMethod | Method => ItemKind::Function,
|
||||
Typedef => ItemKind::Typedef,
|
||||
TypeAlias => ItemKind::TypeAlias,
|
||||
OpaqueTy => ItemKind::OpaqueTy,
|
||||
Static => ItemKind::Static,
|
||||
Constant => ItemKind::Constant,
|
||||
|
@ -184,7 +184,7 @@ impl<'tcx> FormatRenderer<'tcx> for JsonRenderer<'tcx> {
|
||||
| types::ItemEnum::Variant(_)
|
||||
| types::ItemEnum::TraitAlias(_)
|
||||
| types::ItemEnum::Impl(_)
|
||||
| types::ItemEnum::Typedef(_)
|
||||
| types::ItemEnum::TypeAlias(_)
|
||||
| types::ItemEnum::OpaqueTy(_)
|
||||
| types::ItemEnum::Constant(_)
|
||||
| types::ItemEnum::Static(_)
|
||||
|
@ -60,7 +60,7 @@ pub(crate) fn should_have_doc_example(cx: &DocContext<'_>, item: &clean::Item) -
|
||||
| clean::VariantItem(_)
|
||||
| clean::AssocConstItem(..)
|
||||
| clean::AssocTypeItem(..)
|
||||
| clean::TypedefItem(_)
|
||||
| clean::TypeAliasItem(_)
|
||||
| clean::StaticItem(_)
|
||||
| clean::ConstantItem(_)
|
||||
| clean::ExternCrateItem { .. }
|
||||
|
@ -49,7 +49,7 @@ impl<'a, 'tcx> DocFolder for Stripper<'a, 'tcx> {
|
||||
}
|
||||
// These items can all get re-exported
|
||||
clean::OpaqueTyItem(..)
|
||||
| clean::TypedefItem(..)
|
||||
| clean::TypeAliasItem(..)
|
||||
| clean::StaticItem(..)
|
||||
| clean::StructItem(..)
|
||||
| clean::EnumItem(..)
|
||||
|
@ -25,7 +25,7 @@ pub(crate) trait DocVisitor: Sized {
|
||||
ExternCrateItem { src: _ }
|
||||
| ImportItem(_)
|
||||
| FunctionItem(_)
|
||||
| TypedefItem(_)
|
||||
| TypeAliasItem(_)
|
||||
| OpaqueTyItem(_)
|
||||
| StaticItem(_)
|
||||
| ConstantItem(_)
|
||||
|
@ -8,7 +8,7 @@ use serde::{Deserialize, Serialize};
|
||||
use std::path::PathBuf;
|
||||
|
||||
/// rustdoc format-version.
|
||||
pub const FORMAT_VERSION: u32 = 26;
|
||||
pub const FORMAT_VERSION: u32 = 27;
|
||||
|
||||
/// A `Crate` is the root of the emitted JSON blob. It contains all type/documentation information
|
||||
/// about the language items in the local crate, as well as info about external items to allow
|
||||
@ -203,7 +203,7 @@ pub enum ItemKind {
|
||||
Enum,
|
||||
Variant,
|
||||
Function,
|
||||
Typedef,
|
||||
TypeAlias,
|
||||
OpaqueTy,
|
||||
Constant,
|
||||
Trait,
|
||||
@ -242,7 +242,7 @@ pub enum ItemEnum {
|
||||
TraitAlias(TraitAlias),
|
||||
Impl(Impl),
|
||||
|
||||
Typedef(Typedef),
|
||||
TypeAlias(TypeAlias),
|
||||
OpaqueTy(OpaqueTy),
|
||||
Constant(Constant),
|
||||
|
||||
@ -696,7 +696,7 @@ pub enum MacroKind {
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
|
||||
pub struct Typedef {
|
||||
pub struct TypeAlias {
|
||||
#[serde(rename = "type")]
|
||||
pub type_: Type,
|
||||
pub generics: Generics,
|
||||
|
@ -12,7 +12,7 @@ pub(crate) enum Kind {
|
||||
Enum,
|
||||
Variant,
|
||||
Function,
|
||||
Typedef,
|
||||
TypeAlias,
|
||||
OpaqueTy,
|
||||
Constant,
|
||||
Trait,
|
||||
@ -45,7 +45,7 @@ impl Kind {
|
||||
Trait => true,
|
||||
TraitAlias => true,
|
||||
Impl => true,
|
||||
Typedef => true,
|
||||
TypeAlias => true,
|
||||
Constant => true,
|
||||
Static => true,
|
||||
Macro => true,
|
||||
@ -98,7 +98,7 @@ impl Kind {
|
||||
Kind::Union => false,
|
||||
Kind::Enum => false,
|
||||
Kind::Variant => false,
|
||||
Kind::Typedef => false,
|
||||
Kind::TypeAlias => false,
|
||||
Kind::OpaqueTy => false,
|
||||
Kind::Constant => false,
|
||||
Kind::Trait => false,
|
||||
@ -131,7 +131,7 @@ impl Kind {
|
||||
matches!(self, Kind::Trait | Kind::TraitAlias)
|
||||
}
|
||||
pub fn is_type(self) -> bool {
|
||||
matches!(self, Kind::Struct | Kind::Enum | Kind::Union | Kind::Typedef)
|
||||
matches!(self, Kind::Struct | Kind::Enum | Kind::Union | Kind::TypeAlias)
|
||||
}
|
||||
|
||||
pub fn from_item(i: &Item) -> Self {
|
||||
@ -148,7 +148,7 @@ impl Kind {
|
||||
ItemEnum::Trait(_) => Trait,
|
||||
ItemEnum::TraitAlias(_) => TraitAlias,
|
||||
ItemEnum::Impl(_) => Impl,
|
||||
ItemEnum::Typedef(_) => Typedef,
|
||||
ItemEnum::TypeAlias(_) => TypeAlias,
|
||||
ItemEnum::OpaqueTy(_) => OpaqueTy,
|
||||
ItemEnum::Constant(_) => Constant,
|
||||
ItemEnum::Static(_) => Static,
|
||||
@ -186,7 +186,7 @@ impl Kind {
|
||||
ItemKind::StructField => StructField,
|
||||
ItemKind::Trait => Trait,
|
||||
ItemKind::TraitAlias => TraitAlias,
|
||||
ItemKind::Typedef => Typedef,
|
||||
ItemKind::TypeAlias => TypeAlias,
|
||||
ItemKind::Union => Union,
|
||||
ItemKind::Variant => Variant,
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ use rustdoc_json_types::{
|
||||
Constant, Crate, DynTrait, Enum, FnDecl, Function, FunctionPointer, GenericArg, GenericArgs,
|
||||
GenericBound, GenericParamDef, Generics, Id, Impl, Import, ItemEnum, ItemSummary, Module,
|
||||
OpaqueTy, Path, Primitive, ProcMacro, Static, Struct, StructKind, Term, Trait, TraitAlias,
|
||||
Type, TypeBinding, TypeBindingKind, Typedef, Union, Variant, VariantKind, WherePredicate,
|
||||
Type, TypeAlias, TypeBinding, TypeBindingKind, Union, Variant, VariantKind, WherePredicate,
|
||||
};
|
||||
use serde_json::Value;
|
||||
|
||||
@ -37,7 +37,7 @@ pub struct Validator<'a> {
|
||||
|
||||
enum PathKind {
|
||||
Trait,
|
||||
/// Structs, Enums, Unions and Typedefs.
|
||||
/// Structs, Enums, Unions and TypeAliases.
|
||||
///
|
||||
/// This doesn't include trait's because traits are not types.
|
||||
Type,
|
||||
@ -99,7 +99,7 @@ impl<'a> Validator<'a> {
|
||||
ItemEnum::Trait(x) => self.check_trait(x, id),
|
||||
ItemEnum::TraitAlias(x) => self.check_trait_alias(x),
|
||||
ItemEnum::Impl(x) => self.check_impl(x, id),
|
||||
ItemEnum::Typedef(x) => self.check_typedef(x),
|
||||
ItemEnum::TypeAlias(x) => self.check_type_alias(x),
|
||||
ItemEnum::OpaqueTy(x) => self.check_opaque_ty(x),
|
||||
ItemEnum::Constant(x) => self.check_constant(x),
|
||||
ItemEnum::Static(x) => self.check_static(x),
|
||||
@ -221,7 +221,7 @@ impl<'a> Validator<'a> {
|
||||
}
|
||||
}
|
||||
|
||||
fn check_typedef(&mut self, x: &'a Typedef) {
|
||||
fn check_type_alias(&mut self, x: &'a TypeAlias) {
|
||||
self.check_generics(&x.generics);
|
||||
self.check_type(&x.type_);
|
||||
}
|
||||
@ -450,7 +450,7 @@ impl<'a> Validator<'a> {
|
||||
}
|
||||
|
||||
fn add_type_id(&mut self, id: &'a Id) {
|
||||
self.add_id_checked(id, Kind::is_type, "Type (Struct, Enum, Union or Typedef)");
|
||||
self.add_id_checked(id, Kind::is_type, "Type (Struct, Enum, Union or TypeAlias)");
|
||||
}
|
||||
|
||||
/// Add an Id that appeared in a trait
|
||||
|
@ -67,7 +67,7 @@ assert-text: (".sidebar-elems section ul > li:nth-child(5)", "Enums")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(6)", "Constants")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(7)", "Traits")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(8)", "Functions")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(9)", "Type Definitions")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(9)", "Type Aliases")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(10)", "Unions")
|
||||
assert-text: (".sidebar-elems section ul > li:nth-child(11)", "Keywords")
|
||||
assert-text: ("#structs + .item-table .item-name > a", "Foo")
|
||||
@ -102,7 +102,7 @@ assert-text: (".sidebar-elems > section ul.block > li:nth-child(1)", "Modules")
|
||||
assert-text: (".sidebar-elems > section ul.block > li:nth-child(2)", "Structs")
|
||||
assert-text: (".sidebar-elems > section ul.block > li:nth-child(3)", "Traits")
|
||||
assert-text: (".sidebar-elems > section ul.block > li:nth-child(4)", "Functions")
|
||||
assert-text: (".sidebar-elems > section ul.block > li:nth-child(5)", "Type Definitions")
|
||||
assert-text: (".sidebar-elems > section ul.block > li:nth-child(5)", "Type Aliases")
|
||||
assert-text: ("#functions + .item-table .item-name > a", "foobar")
|
||||
click: "#functions + .item-table .item-name > a"
|
||||
|
||||
|
@ -2,23 +2,23 @@
|
||||
|
||||
#![feature(abi_vectorcall)]
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiRust')].inner.typedef.type.function_pointer.header.abi" \"Rust\"
|
||||
// @is "$.index[*][?(@.name=='AbiRust')].inner.type_alias.type.function_pointer.header.abi" \"Rust\"
|
||||
pub type AbiRust = fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiC')].inner.typedef.type.function_pointer.header.abi" '{"C": {"unwind": false}}'
|
||||
// @is "$.index[*][?(@.name=='AbiC')].inner.type_alias.type.function_pointer.header.abi" '{"C": {"unwind": false}}'
|
||||
pub type AbiC = extern "C" fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiSystem')].inner.typedef.type.function_pointer.header.abi" '{"System": {"unwind": false}}'
|
||||
// @is "$.index[*][?(@.name=='AbiSystem')].inner.type_alias.type.function_pointer.header.abi" '{"System": {"unwind": false}}'
|
||||
pub type AbiSystem = extern "system" fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiCUnwind')].inner.typedef.type.function_pointer.header.abi" '{"C": {"unwind": true}}'
|
||||
// @is "$.index[*][?(@.name=='AbiCUnwind')].inner.type_alias.type.function_pointer.header.abi" '{"C": {"unwind": true}}'
|
||||
pub type AbiCUnwind = extern "C-unwind" fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiSystemUnwind')].inner.typedef.type.function_pointer.header.abi" '{"System": {"unwind": true}}'
|
||||
// @is "$.index[*][?(@.name=='AbiSystemUnwind')].inner.type_alias.type.function_pointer.header.abi" '{"System": {"unwind": true}}'
|
||||
pub type AbiSystemUnwind = extern "system-unwind" fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiVecorcall')].inner.typedef.type.function_pointer.header.abi.Other" '"\"vectorcall\""'
|
||||
// @is "$.index[*][?(@.name=='AbiVecorcall')].inner.type_alias.type.function_pointer.header.abi.Other" '"\"vectorcall\""'
|
||||
pub type AbiVecorcall = extern "vectorcall" fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='AbiVecorcallUnwind')].inner.typedef.type.function_pointer.header.abi.Other" '"\"vectorcall-unwind\""'
|
||||
// @is "$.index[*][?(@.name=='AbiVecorcallUnwind')].inner.type_alias.type.function_pointer.header.abi.Other" '"\"vectorcall-unwind\""'
|
||||
pub type AbiVecorcallUnwind = extern "vectorcall-unwind" fn();
|
||||
|
@ -3,11 +3,11 @@
|
||||
#![feature(no_core)]
|
||||
#![no_core]
|
||||
|
||||
// @count "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.decl.inputs[0][0]" '"val"'
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.decl.inputs[0][1].borrowed_ref.lifetime" \"\'c\"
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.decl.output.primitive" \"i32\"
|
||||
// @count "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.generic_params[*]" 1
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.generic_params[0].name" \"\'c\"
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.typedef.type.function_pointer.generic_params[0].kind" '{ "lifetime": { "outlives": [] } }'
|
||||
// @count "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.decl.inputs[0][0]" '"val"'
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.decl.inputs[0][1].borrowed_ref.lifetime" \"\'c\"
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.decl.output.primitive" \"i32\"
|
||||
// @count "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.generic_params[*]" 1
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.generic_params[0].name" \"\'c\"
|
||||
// @is "$.index[*][?(@.name=='WithHigherRankTraitBounds')].inner.type_alias.type.function_pointer.generic_params[0].kind" '{ "lifetime": { "outlives": [] } }'
|
||||
pub type WithHigherRankTraitBounds = for<'c> fn(val: &'c i32) -> i32;
|
||||
|
@ -1,11 +1,11 @@
|
||||
// ignore-tidy-linelength
|
||||
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.typedef.type.function_pointer.header.unsafe" false
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.typedef.type.function_pointer.header.const" false
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.typedef.type.function_pointer.header.async" false
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.type_alias.type.function_pointer.header.unsafe" false
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.type_alias.type.function_pointer.header.const" false
|
||||
// @is "$.index[*][?(@.name=='FnPointer')].inner.type_alias.type.function_pointer.header.async" false
|
||||
pub type FnPointer = fn();
|
||||
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.typedef.type.function_pointer.header.unsafe" true
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.typedef.type.function_pointer.header.const" false
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.typedef.type.function_pointer.header.async" false
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.type_alias.type.function_pointer.header.unsafe" true
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.type_alias.type.function_pointer.header.const" false
|
||||
// @is "$.index[*][?(@.name=='UnsafePointer')].inner.type_alias.type.function_pointer.header.async" false
|
||||
pub type UnsafePointer = unsafe fn();
|
||||
|
@ -1,17 +1,17 @@
|
||||
#![feature(never_type)]
|
||||
|
||||
// @is "$.index[*][?(@.name=='PrimNever')].visibility" \"public\"
|
||||
// @is "$.index[*][?(@.name=='PrimNever')].inner.typedef.type.primitive" \"never\"
|
||||
// @is "$.index[*][?(@.name=='PrimNever')].inner.type_alias.type.primitive" \"never\"
|
||||
pub type PrimNever = !;
|
||||
|
||||
// @is "$.index[*][?(@.name=='PrimStr')].inner.typedef.type.primitive" \"str\"
|
||||
// @is "$.index[*][?(@.name=='PrimStr')].inner.type_alias.type.primitive" \"str\"
|
||||
pub type PrimStr = str;
|
||||
|
||||
// @is "$.index[*][?(@.name=='PrimBool')].inner.typedef.type.primitive" \"bool\"
|
||||
// @is "$.index[*][?(@.name=='PrimBool')].inner.type_alias.type.primitive" \"bool\"
|
||||
pub type PrimBool = bool;
|
||||
|
||||
// @is "$.index[*][?(@.name=='PrimChar')].inner.typedef.type.primitive" \"char\"
|
||||
// @is "$.index[*][?(@.name=='PrimChar')].inner.type_alias.type.primitive" \"char\"
|
||||
pub type PrimChar = char;
|
||||
|
||||
// @is "$.index[*][?(@.name=='PrimU8')].inner.typedef.type.primitive" \"u8\"
|
||||
// @is "$.index[*][?(@.name=='PrimU8')].inner.type_alias.type.primitive" \"u8\"
|
||||
pub type PrimU8 = u8;
|
||||
|
@ -7,40 +7,40 @@ use std::fmt::Debug;
|
||||
// @set weird_order = "$.index[*][?(@.name=='WeirdOrder')].id"
|
||||
// @ismany "$.index[*][?(@.name=='dyn')].inner.module.items[*]" $sync_int_gen $ref_fn $weird_order
|
||||
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.typedef"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.generics" '{"params": [], "where_predicates": []}'
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.name" \"Box\"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.bindings" []
|
||||
// @count "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args" 1
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.lifetime" \"\'static\"
|
||||
// @count "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[*]" 3
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[2].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.name" '"Fn"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].trait.name" '"Send"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[2].trait.name" '"Sync"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.args" '{"parenthesized": {"inputs": [],"output": {"primitive": "i32"}}}'
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.generics" '{"params": [], "where_predicates": []}'
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.name" \"Box\"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.bindings" []
|
||||
// @count "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args" 1
|
||||
// @has "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait"
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.lifetime" \"\'static\"
|
||||
// @count "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[*]" 3
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[2].generic_params" []
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.name" '"Fn"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].trait.name" '"Send"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[2].trait.name" '"Sync"'
|
||||
// @is "$.index[*][?(@.name=='SyncIntGen')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.args" '{"parenthesized": {"inputs": [],"output": {"primitive": "i32"}}}'
|
||||
pub type SyncIntGen = Box<dyn Fn() -> i32 + Send + Sync + 'static>;
|
||||
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.typedef"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.generics" '{"params": [{"kind": {"lifetime": {"outlives": []}},"name": "'\''a"}],"where_predicates": []}'
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.mutable" 'false'
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.lifetime" "\"'a\""
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.lifetime" null
|
||||
// @count "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[*]" 1
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].generic_params" '[{"kind": {"lifetime": {"outlives": []}},"name": "'\''b"}]'
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].trait.name" '"Fn"'
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.inputs[0].borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.inputs[0].borrowed_ref.lifetime" "\"'b\""
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.output.borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.typedef.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.output.borrowed_ref.lifetime" "\"'b\""
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.type_alias"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.generics" '{"params": [{"kind": {"lifetime": {"outlives": []}},"name": "'\''a"}],"where_predicates": []}'
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.mutable" 'false'
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.lifetime" "\"'a\""
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.lifetime" null
|
||||
// @count "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[*]" 1
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].generic_params" '[{"kind": {"lifetime": {"outlives": []}},"name": "'\''b"}]'
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].trait.name" '"Fn"'
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.inputs[0].borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.inputs[0].borrowed_ref.lifetime" "\"'b\""
|
||||
// @has "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.output.borrowed_ref"
|
||||
// @is "$.index[*][?(@.name=='RefFn')].inner.type_alias.type.borrowed_ref.type.dyn_trait.traits[0].trait.args.parenthesized.output.borrowed_ref.lifetime" "\"'b\""
|
||||
pub type RefFn<'a> = &'a dyn for<'b> Fn(&'b i32) -> &'b i32;
|
||||
|
||||
// @is "$.index[*][?(@.name=='WeirdOrder')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.name" '"Send"'
|
||||
// @is "$.index[*][?(@.name=='WeirdOrder')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].trait.name" '"Debug"'
|
||||
// @is "$.index[*][?(@.name=='WeirdOrder')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[0].trait.name" '"Send"'
|
||||
// @is "$.index[*][?(@.name=='WeirdOrder')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.dyn_trait.traits[1].trait.name" '"Debug"'
|
||||
pub type WeirdOrder = Box<dyn Send + Debug>;
|
||||
|
@ -1,26 +1,26 @@
|
||||
// ignore-tidy-linelength
|
||||
|
||||
// @has "$.index[*][?(@.name=='GenericFn')].inner.typedef"
|
||||
// @has "$.index[*][?(@.name=='GenericFn')].inner.type_alias"
|
||||
|
||||
// @ismany "$.index[*][?(@.name=='GenericFn')].inner.typedef.generics.params[*].name" \"\'a\"
|
||||
// @has "$.index[*][?(@.name=='GenericFn')].inner.typedef.generics.params[*].kind.lifetime"
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.typedef.generics.params[*].kind.lifetime.outlives[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.typedef.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.typedef.type.function_pointer.generic_params[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.typedef.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='GenericFn')].inner.typedef.type.function_pointer.decl.inputs[*][1].borrowed_ref.lifetime" \"\'a\"
|
||||
// @is "$.index[*][?(@.name=='GenericFn')].inner.typedef.type.function_pointer.decl.output.borrowed_ref.lifetime" \"\'a\"
|
||||
// @ismany "$.index[*][?(@.name=='GenericFn')].inner.type_alias.generics.params[*].name" \"\'a\"
|
||||
// @has "$.index[*][?(@.name=='GenericFn')].inner.type_alias.generics.params[*].kind.lifetime"
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.type_alias.generics.params[*].kind.lifetime.outlives[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.type_alias.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.type_alias.type.function_pointer.generic_params[*]" 0
|
||||
// @count "$.index[*][?(@.name=='GenericFn')].inner.type_alias.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='GenericFn')].inner.type_alias.type.function_pointer.decl.inputs[*][1].borrowed_ref.lifetime" \"\'a\"
|
||||
// @is "$.index[*][?(@.name=='GenericFn')].inner.type_alias.type.function_pointer.decl.output.borrowed_ref.lifetime" \"\'a\"
|
||||
|
||||
pub type GenericFn<'a> = fn(&'a i32) -> &'a i32;
|
||||
|
||||
// @has "$.index[*][?(@.name=='ForAll')].inner.typedef"
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.typedef.generics.params[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.typedef.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.generic_params[*]" 1
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.generic_params[*].name" \"\'a\"
|
||||
// @has "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.generic_params[*].kind.lifetime"
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.generic_params[*].kind.lifetime.outlives[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.decl.inputs[*][1].borrowed_ref.lifetime" \"\'a\"
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.typedef.type.function_pointer.decl.output.borrowed_ref.lifetime" \"\'a\"
|
||||
// @has "$.index[*][?(@.name=='ForAll')].inner.type_alias"
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.type_alias.generics.params[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.type_alias.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.generic_params[*]" 1
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.generic_params[*].name" \"\'a\"
|
||||
// @has "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.generic_params[*].kind.lifetime"
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.generic_params[*].kind.lifetime.outlives[*]" 0
|
||||
// @count "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.decl.inputs[*]" 1
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.decl.inputs[*][1].borrowed_ref.lifetime" \"\'a\"
|
||||
// @is "$.index[*][?(@.name=='ForAll')].inner.type_alias.type.function_pointer.decl.output.borrowed_ref.lifetime" \"\'a\"
|
||||
pub type ForAll = for<'a> fn(&'a i32) -> &'a i32;
|
||||
|
@ -9,25 +9,25 @@ pub enum Result<T, E> {
|
||||
// @set my_error = "$.index[*][?(@.name=='MyError')].id"
|
||||
pub struct MyError {}
|
||||
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef"
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[*]" 2
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[0].name" \"T\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].name" \"E\"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[0].kind.type"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].kind.type"
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[0].kind.type.bounds[*]" 0
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].kind.type.bounds[*]" 0
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[0].kind.type.default" null
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].kind.type.default.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].kind.type.default.resolved_path.id" $my_error
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.generics.params[1].kind.type.default.resolved_path.name" \"MyError\"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.id" $result
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.name" \"Result\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.args.angle_bracketed.bindings" []
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.generic"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.args.angle_bracketed.args[1].type.generic"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.args.angle_bracketed.args[0].type.generic" \"T\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.typedef.type.resolved_path.args.angle_bracketed.args[1].type.generic" \"E\"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias"
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.where_predicates[*]" 0
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[*]" 2
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[0].name" \"T\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].name" \"E\"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[0].kind.type"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].kind.type"
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[0].kind.type.bounds[*]" 0
|
||||
// @count "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].kind.type.bounds[*]" 0
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[0].kind.type.default" null
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].kind.type.default.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].kind.type.default.resolved_path.id" $my_error
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.generics.params[1].kind.type.default.resolved_path.name" \"MyError\"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.id" $result
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.name" \"Result\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.args.angle_bracketed.bindings" []
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.generic"
|
||||
// @has "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[1].type.generic"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[0].type.generic" \"T\"
|
||||
// @is "$.index[*][?(@.name=='MyResult')].inner.type_alias.type.resolved_path.args.angle_bracketed.args[1].type.generic" \"E\"
|
||||
pub type MyResult<T, E = MyError> = Result<T, E>;
|
||||
|
@ -8,7 +8,7 @@
|
||||
// @has - '//*[@class="item-name"]/a[@class="constant"]' 'AtomicU8'
|
||||
// We also ensure we don't have another item displayed.
|
||||
// @count - '//*[@id="main-content"]/*[@class="small-section-header"]' 2
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Type Definitions'
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Type Aliases'
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Constants'
|
||||
|
||||
mod other {
|
||||
|
@ -104,7 +104,7 @@ pub mod glob_reexport {
|
||||
// @count - '//*[@id="main-content"]/*[@class="small-section-header"]' 3
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Re-exports'
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Structs'
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Type Definitions'
|
||||
// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Type Aliases'
|
||||
|
||||
// Now we check we have 1 re-export and 2 inlined items.
|
||||
// If not item from a glob re-export is visible, we don't show the re-export.
|
||||
@ -135,9 +135,9 @@ pub mod doc_hidden_reexport {
|
||||
// @has - '//a[@class="struct"]' 'Reexport'
|
||||
// Check that the `#[doc(hidden)]` re-export's attributes are not taken into account.
|
||||
// @has - '//*[@class="desc docblock-short"]' 'Visible. Original.'
|
||||
/// Visible.
|
||||
pub use self::Bar3 as Reexport;
|
||||
/// Hidden.
|
||||
#[doc(hidden)]
|
||||
pub use crate::private::Bar3;
|
||||
/// Visible.
|
||||
pub use self::Bar3 as Reexport;
|
||||
}
|
||||
|
@ -1,5 +1,4 @@
|
||||
#![crate_name = "foo"]
|
||||
|
||||
#![feature(rustc_attrs)]
|
||||
|
||||
// @has 'foo/all.html'
|
||||
@ -9,7 +8,7 @@
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Functions'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Traits'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Macros'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Type Definitions'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Type Aliases'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Constants'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Statics'
|
||||
// @has - '//*[@class="sidebar-elems"]//li' 'Primitive Types'
|
||||
@ -26,7 +25,7 @@ pub fn foo() {}
|
||||
pub trait Trait {}
|
||||
#[macro_export]
|
||||
macro_rules! foo {
|
||||
() => {}
|
||||
() => {};
|
||||
}
|
||||
pub type Type = u8;
|
||||
pub const FOO: u8 = 0;
|
||||
|
@ -30,7 +30,7 @@ pub struct FooStruct;
|
||||
// @matches 'foo/enum.FooEnum.html' '//h2[@class="location"]' 'FooEnum'
|
||||
pub enum FooEnum {}
|
||||
|
||||
// @matches 'foo/type.FooType.html' '//h1' 'Type Definition foo::FooType'
|
||||
// @matches 'foo/type.FooType.html' '//h1' 'Type Alias foo::FooType'
|
||||
// @matches 'foo/type.FooType.html' '//h2[@class="location"]' 'FooType'
|
||||
pub type FooType = FooStruct;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user