pub(crate) enum ItemKind {
Show 28 variants
ExternCrateItem {
src: Option<Symbol>,
},
ImportItem(Import),
StructItem(Struct),
UnionItem(Union),
EnumItem(Enum),
FunctionItem(Function),
ModuleItem(Module),
TypedefItem(Typedef, bool),
OpaqueTyItem(OpaqueTy),
StaticItem(Static),
ConstantItem(Constant),
TraitItem(Trait),
TraitAliasItem(TraitAlias),
ImplItem(Impl),
TyMethodItem(Function),
MethodItem(Function, Option<Defaultness>),
StructFieldItem(Type),
VariantItem(Variant),
ForeignFunctionItem(Function),
ForeignStaticItem(Static),
ForeignTypeItem,
MacroItem(Macro),
ProcMacroItem(ProcMacro),
PrimitiveItem(PrimitiveType),
AssocConstItem(Type, Option<ConstantKind>),
AssocTypeItem(Vec<GenericBound>, Option<Type>),
StrippedItem(Box<ItemKind>),
KeywordItem(Symbol),
}Variants
ExternCrateItem
ImportItem(Import)
StructItem(Struct)
UnionItem(Union)
EnumItem(Enum)
FunctionItem(Function)
ModuleItem(Module)
TypedefItem(Typedef, bool)
OpaqueTyItem(OpaqueTy)
StaticItem(Static)
ConstantItem(Constant)
TraitItem(Trait)
TraitAliasItem(TraitAlias)
ImplItem(Impl)
TyMethodItem(Function)
A method signature only. Used for required methods in traits (ie, non-default-methods).
MethodItem(Function, Option<Defaultness>)
A method with a body.
StructFieldItem(Type)
VariantItem(Variant)
ForeignFunctionItem(Function)
fns from an extern block
ForeignStaticItem(Static)
statics from an extern block
ForeignTypeItem
types from an extern block
MacroItem(Macro)
ProcMacroItem(ProcMacro)
PrimitiveItem(PrimitiveType)
AssocConstItem(Type, Option<ConstantKind>)
AssocTypeItem(Vec<GenericBound>, Option<Type>)
An associated item in a trait or trait impl.
The bounds may be non-empty if there is a where clause.
The Option<Type> is the default concrete type (e.g. trait Trait { type Target = usize; })
StrippedItem(Box<ItemKind>)
An item that has been stripped by a rustdoc pass
KeywordItem(Symbol)
Implementations
sourceimpl ItemKind
impl ItemKind
sourcepub(crate) fn inner_items(&self) -> impl Iterator<Item = &Item>
pub(crate) fn inner_items(&self) -> impl Iterator<Item = &Item>
Some items contain others such as structs (for their fields) and Enums (for their variants). This method returns those contained items.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for ItemKind
impl !Send for ItemKind
impl !Sync for ItemKind
impl Unpin for ItemKind
impl !UnwindSafe for ItemKind
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more
impl<'a, T> Captures<'a> for T where
T: ?Sized,
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 224 bytes
Size for each variant:
ExternCrateItem: 7 bytesImportItem: 71 bytesStructItem: 87 bytesUnionItem: 87 bytesEnumItem: 87 bytesFunctionItem: 167 bytesModuleItem: 39 bytesTypedefItem: 199 bytesOpaqueTyItem: 79 bytesStaticItem: 95 bytesConstantItem: 111 bytesTraitItem: 111 bytesTraitAliasItem: 79 bytesImplItem: 223 bytesTyMethodItem: 167 bytesMethodItem: 167 bytesStructFieldItem: 79 bytesVariantItem: 47 bytesForeignFunctionItem: 167 bytesForeignStaticItem: 95 bytesForeignTypeItem: 0 bytesMacroItem: 31 bytesProcMacroItem: 39 bytesPrimitiveItem: 1 byteAssocConstItem: 111 bytesAssocTypeItem: 103 bytesStrippedItem: 15 bytesKeywordItem: 7 bytes