pub struct Item {
pub id: Id,
pub crate_id: u32,
pub name: Option<String>,
pub span: Option<Span>,
pub visibility: Visibility,
pub docs: Option<String>,
pub links: HashMap<String, Id>,
pub attrs: Vec<String>,
pub deprecation: Option<Deprecation>,
pub inner: ItemEnum,
}Expand description
Anything that can hold documentation - modules, structs, enums, functions, traits, etc.
The Item data type holds fields that can apply to any of these,
and leaves kind-specific details (like function args or enum variants) to the inner field.
Fields§
§id: IdThe unique identifier of this item. Can be used to find this item in various mappings.
crate_id: u32This can be used as a key to the external_crates map of Crate to see which crate
this item came from.
name: Option<String>Some items such as impls don’t have names.
span: Option<Span>The source location of this item (absent if it came from a macro expansion or inline assembly).
visibility: VisibilityBy default all documented items are public, but you can tell rustdoc to output private items so this field is needed to differentiate.
docs: Option<String>The full markdown docstring of this item. Absent if there is no documentation at all,
Some(“”) if there is some documentation but it is empty (EG #[doc = ""]).
links: HashMap<String, Id>This mapping resolves intra-doc links from the docstring to their IDs
attrs: Vec<String>Stringified versions of the attributes on this item (e.g. "#[inline]")
deprecation: Option<Deprecation>Information about the item’s deprecation, if present.
inner: ItemEnumThe type-specific fields describing this item.