]> git.lizzy.rs Git - rust.git/blobdiff - src/librustdoc/html/item_type.rs
Rollup merge of #69568 - JOE1994:patch-2, r=Dylan-DPC
[rust.git] / src / librustdoc / html / item_type.rs
index 85f132378b1ddfe171545abcea78defac828502e..4a0f4e5a4c9c832773b231352087ed3c0acd7ba9 100644 (file)
@@ -4,7 +4,7 @@
 
 use serde::{Serialize, Serializer};
 
-use syntax_pos::hygiene::MacroKind;
+use rustc_span::hygiene::MacroKind;
 
 use crate::clean;
 
 /// ordering based on a helper function inside `item_module`, in the same file.
 #[derive(Copy, PartialEq, Eq, Clone, Debug, PartialOrd, Ord)]
 pub enum ItemType {
-    Module          = 0,
-    ExternCrate     = 1,
-    Import          = 2,
-    Struct          = 3,
-    Enum            = 4,
-    Function        = 5,
-    Typedef         = 6,
-    Static          = 7,
-    Trait           = 8,
-    Impl            = 9,
-    TyMethod        = 10,
-    Method          = 11,
-    StructField     = 12,
-    Variant         = 13,
-    Macro           = 14,
-    Primitive       = 15,
-    AssocType       = 16,
-    Constant        = 17,
-    AssocConst      = 18,
-    Union           = 19,
-    ForeignType     = 20,
-    Keyword         = 21,
-    OpaqueTy        = 22,
-    ProcAttribute   = 23,
-    ProcDerive      = 24,
-    TraitAlias      = 25,
+    Module = 0,
+    ExternCrate = 1,
+    Import = 2,
+    Struct = 3,
+    Enum = 4,
+    Function = 5,
+    Typedef = 6,
+    Static = 7,
+    Trait = 8,
+    Impl = 9,
+    TyMethod = 10,
+    Method = 11,
+    StructField = 12,
+    Variant = 13,
+    Macro = 14,
+    Primitive = 15,
+    AssocType = 16,
+    Constant = 17,
+    AssocConst = 18,
+    Union = 19,
+    ForeignType = 20,
+    Keyword = 21,
+    OpaqueTy = 22,
+    ProcAttribute = 23,
+    ProcDerive = 24,
+    TraitAlias = 25,
 }
 
 impl Serialize for ItemType {
@@ -62,42 +62,42 @@ impl<'a> From<&'a clean::Item> for ItemType {
     fn from(item: &'a clean::Item) -> ItemType {
         let inner = match item.inner {
             clean::StrippedItem(box ref item) => item,
-            ref inner@_ => inner,
+            ref inner @ _ => inner,
         };
 
         match *inner {
-            clean::ModuleItem(..)          => ItemType::Module,
-            clean::ExternCrateItem(..)     => ItemType::ExternCrate,
-            clean::ImportItem(..)          => ItemType::Import,
-            clean::StructItem(..)          => ItemType::Struct,
-            clean::UnionItem(..)           => ItemType::Union,
-            clean::EnumItem(..)            => ItemType::Enum,
-            clean::FunctionItem(..)        => ItemType::Function,
-            clean::TypedefItem(..)         => ItemType::Typedef,
-            clean::OpaqueTyItem(..)        => ItemType::OpaqueTy,
-            clean::StaticItem(..)          => ItemType::Static,
-            clean::ConstantItem(..)        => ItemType::Constant,
-            clean::TraitItem(..)           => ItemType::Trait,
-            clean::ImplItem(..)            => ItemType::Impl,
-            clean::TyMethodItem(..)        => ItemType::TyMethod,
-            clean::MethodItem(..)          => ItemType::Method,
-            clean::StructFieldItem(..)     => ItemType::StructField,
-            clean::VariantItem(..)         => ItemType::Variant,
+            clean::ModuleItem(..) => ItemType::Module,
+            clean::ExternCrateItem(..) => ItemType::ExternCrate,
+            clean::ImportItem(..) => ItemType::Import,
+            clean::StructItem(..) => ItemType::Struct,
+            clean::UnionItem(..) => ItemType::Union,
+            clean::EnumItem(..) => ItemType::Enum,
+            clean::FunctionItem(..) => ItemType::Function,
+            clean::TypedefItem(..) => ItemType::Typedef,
+            clean::OpaqueTyItem(..) => ItemType::OpaqueTy,
+            clean::StaticItem(..) => ItemType::Static,
+            clean::ConstantItem(..) => ItemType::Constant,
+            clean::TraitItem(..) => ItemType::Trait,
+            clean::ImplItem(..) => ItemType::Impl,
+            clean::TyMethodItem(..) => ItemType::TyMethod,
+            clean::MethodItem(..) => ItemType::Method,
+            clean::StructFieldItem(..) => ItemType::StructField,
+            clean::VariantItem(..) => ItemType::Variant,
             clean::ForeignFunctionItem(..) => ItemType::Function, // no ForeignFunction
-            clean::ForeignStaticItem(..)   => ItemType::Static, // no ForeignStatic
-            clean::MacroItem(..)           => ItemType::Macro,
-            clean::PrimitiveItem(..)       => ItemType::Primitive,
-            clean::AssocConstItem(..)      => ItemType::AssocConst,
-            clean::AssocTypeItem(..)       => ItemType::AssocType,
-            clean::ForeignTypeItem         => ItemType::ForeignType,
-            clean::KeywordItem(..)         => ItemType::Keyword,
-            clean::TraitAliasItem(..)      => ItemType::TraitAlias,
-            clean::ProcMacroItem(ref mac)  => match mac.kind {
-                MacroKind::Bang            => ItemType::Macro,
-                MacroKind::Attr            => ItemType::ProcAttribute,
-                MacroKind::Derive          => ItemType::ProcDerive,
-            }
-            clean::StrippedItem(..)        => unreachable!(),
+            clean::ForeignStaticItem(..) => ItemType::Static,     // no ForeignStatic
+            clean::MacroItem(..) => ItemType::Macro,
+            clean::PrimitiveItem(..) => ItemType::Primitive,
+            clean::AssocConstItem(..) => ItemType::AssocConst,
+            clean::AssocTypeItem(..) => ItemType::AssocType,
+            clean::ForeignTypeItem => ItemType::ForeignType,
+            clean::KeywordItem(..) => ItemType::Keyword,
+            clean::TraitAliasItem(..) => ItemType::TraitAlias,
+            clean::ProcMacroItem(ref mac) => match mac.kind {
+                MacroKind::Bang => ItemType::Macro,
+                MacroKind::Attr => ItemType::ProcAttribute,
+                MacroKind::Derive => ItemType::ProcDerive,
+            },
+            clean::StrippedItem(..) => unreachable!(),
         }
     }
 }
@@ -105,19 +105,19 @@ fn from(item: &'a clean::Item) -> ItemType {
 impl From<clean::TypeKind> for ItemType {
     fn from(kind: clean::TypeKind) -> ItemType {
         match kind {
-            clean::TypeKind::Struct     => ItemType::Struct,
-            clean::TypeKind::Union      => ItemType::Union,
-            clean::TypeKind::Enum       => ItemType::Enum,
-            clean::TypeKind::Function   => ItemType::Function,
-            clean::TypeKind::Trait      => ItemType::Trait,
-            clean::TypeKind::Module     => ItemType::Module,
-            clean::TypeKind::Static     => ItemType::Static,
-            clean::TypeKind::Const      => ItemType::Constant,
-            clean::TypeKind::Typedef    => ItemType::Typedef,
-            clean::TypeKind::Foreign    => ItemType::ForeignType,
-            clean::TypeKind::Macro      => ItemType::Macro,
-            clean::TypeKind::Attr       => ItemType::ProcAttribute,
-            clean::TypeKind::Derive     => ItemType::ProcDerive,
+            clean::TypeKind::Struct => ItemType::Struct,
+            clean::TypeKind::Union => ItemType::Union,
+            clean::TypeKind::Enum => ItemType::Enum,
+            clean::TypeKind::Function => ItemType::Function,
+            clean::TypeKind::Trait => ItemType::Trait,
+            clean::TypeKind::Module => ItemType::Module,
+            clean::TypeKind::Static => ItemType::Static,
+            clean::TypeKind::Const => ItemType::Constant,
+            clean::TypeKind::Typedef => ItemType::Typedef,
+            clean::TypeKind::Foreign => ItemType::ForeignType,
+            clean::TypeKind::Macro => ItemType::Macro,
+            clean::TypeKind::Attr => ItemType::ProcAttribute,
+            clean::TypeKind::Derive => ItemType::ProcDerive,
             clean::TypeKind::TraitAlias => ItemType::TraitAlias,
         }
     }
@@ -126,64 +126,62 @@ fn from(kind: clean::TypeKind) -> ItemType {
 impl ItemType {
     pub fn as_str(&self) -> &'static str {
         match *self {
-            ItemType::Module          => "mod",
-            ItemType::ExternCrate     => "externcrate",
-            ItemType::Import          => "import",
-            ItemType::Struct          => "struct",
-            ItemType::Union           => "union",
-            ItemType::Enum            => "enum",
-            ItemType::Function        => "fn",
-            ItemType::Typedef         => "type",
-            ItemType::Static          => "static",
-            ItemType::Trait           => "trait",
-            ItemType::Impl            => "impl",
-            ItemType::TyMethod        => "tymethod",
-            ItemType::Method          => "method",
-            ItemType::StructField     => "structfield",
-            ItemType::Variant         => "variant",
-            ItemType::Macro           => "macro",
-            ItemType::Primitive       => "primitive",
-            ItemType::AssocType       => "associatedtype",
-            ItemType::Constant        => "constant",
-            ItemType::AssocConst      => "associatedconstant",
-            ItemType::ForeignType     => "foreigntype",
-            ItemType::Keyword         => "keyword",
-            ItemType::OpaqueTy        => "opaque",
-            ItemType::ProcAttribute   => "attr",
-            ItemType::ProcDerive      => "derive",
-            ItemType::TraitAlias      => "traitalias",
+            ItemType::Module => "mod",
+            ItemType::ExternCrate => "externcrate",
+            ItemType::Import => "import",
+            ItemType::Struct => "struct",
+            ItemType::Union => "union",
+            ItemType::Enum => "enum",
+            ItemType::Function => "fn",
+            ItemType::Typedef => "type",
+            ItemType::Static => "static",
+            ItemType::Trait => "trait",
+            ItemType::Impl => "impl",
+            ItemType::TyMethod => "tymethod",
+            ItemType::Method => "method",
+            ItemType::StructField => "structfield",
+            ItemType::Variant => "variant",
+            ItemType::Macro => "macro",
+            ItemType::Primitive => "primitive",
+            ItemType::AssocType => "associatedtype",
+            ItemType::Constant => "constant",
+            ItemType::AssocConst => "associatedconstant",
+            ItemType::ForeignType => "foreigntype",
+            ItemType::Keyword => "keyword",
+            ItemType::OpaqueTy => "opaque",
+            ItemType::ProcAttribute => "attr",
+            ItemType::ProcDerive => "derive",
+            ItemType::TraitAlias => "traitalias",
         }
     }
 
     pub fn name_space(&self) -> &'static str {
         match *self {
-            ItemType::Struct |
-            ItemType::Union |
-            ItemType::Enum |
-            ItemType::Module |
-            ItemType::Typedef |
-            ItemType::Trait |
-            ItemType::Primitive |
-            ItemType::AssocType |
-            ItemType::OpaqueTy |
-            ItemType::TraitAlias |
-            ItemType::ForeignType => NAMESPACE_TYPE,
-
-            ItemType::ExternCrate |
-            ItemType::Import |
-            ItemType::Function |
-            ItemType::Static |
-            ItemType::Impl |
-            ItemType::TyMethod |
-            ItemType::Method |
-            ItemType::StructField |
-            ItemType::Variant |
-            ItemType::Constant |
-            ItemType::AssocConst => NAMESPACE_VALUE,
-
-            ItemType::Macro |
-            ItemType::ProcAttribute |
-            ItemType::ProcDerive => NAMESPACE_MACRO,
+            ItemType::Struct
+            | ItemType::Union
+            | ItemType::Enum
+            | ItemType::Module
+            | ItemType::Typedef
+            | ItemType::Trait
+            | ItemType::Primitive
+            | ItemType::AssocType
+            | ItemType::OpaqueTy
+            | ItemType::TraitAlias
+            | ItemType::ForeignType => NAMESPACE_TYPE,
+
+            ItemType::ExternCrate
+            | ItemType::Import
+            | ItemType::Function
+            | ItemType::Static
+            | ItemType::Impl
+            | ItemType::TyMethod
+            | ItemType::Method
+            | ItemType::StructField
+            | ItemType::Variant
+            | ItemType::Constant
+            | ItemType::AssocConst => NAMESPACE_VALUE,
+
+            ItemType::Macro | ItemType::ProcAttribute | ItemType::ProcDerive => NAMESPACE_MACRO,
 
             ItemType::Keyword => NAMESPACE_KEYWORD,
         }