Expand description
Rustdoc’s JSON output interface
These types are the public API exposed through the --output-format json
flag. The Crate
struct is the root of the JSON blob and all other items are contained within.
Structs§
- Describes a bound applied to an associated type/constant.
- A constant.
- The root of the emitted JSON blob.
- Information about the deprecation of an
Item
. - The value that distinguishes a variant in an
Enum
from other variants. - Dynamic trait object type (
dyn Trait
). - An
enum
. - Metadata of a crate, either the same crate on which
rustdoc
was invoked, or its dependency. - A function declaration (including methods and other associated functions).
- A set of fundamental properties of a function.
- A type that is a function pointer.
- The signature of a function.
- One generic parameter accepted by an item.
- Generic parameters accepted by an item and
where
clauses imposed on it and the parameters. - An opaque identifier for an item.
- An
impl
block. - Anything that can hold documentation - modules, structs, enums, functions, traits, etc.
- Information about an external (not defined in the local crate)
Item
. - A module declaration, e.g.
mod foo;
ormod foo {}
. - A type that has a simple path to it. This is the kind of type of structs, unions, enums, etc.
- A trait and potential HRTBs
- A primitive type declaration. Declarations of this kind can only come from the core library.
- A procedural macro.
- A range of source code.
- A
static
declaration. - A
struct
. - A
trait
declaration. - A trait alias declaration, e.g.
trait Int = Add + Sub + Mul + Div;
- A type alias declaration, e.g.
type Pig = std::borrow::Cow<'static, str>;
- A
union
. - A
use
statement. - A variant of an enum.
Enums§
- The ABI (Application Binary Interface) used by a function.
- The way in which an associate type/constant is bound.
- One argument in a list of generic arguments to a path segment.
- A set of generic arguments provided to a path segment, e.g.
- Either a trait bound or a lifetime bound.
- The kind of a
GenericParamDef
. - Specific fields of an item.
- The fundamental kind of an item. Unlike
ItemEnum
, this does not carry any aditional info. - The way a
ProcMacro
is declared to be used. - The kind of a
Struct
and the data specific to it, i.e. fields. - Either a type or a constant, usually stored as the right-hand side of an equation in places like
AssocItemConstraint
- A set of modifiers applied to a trait.
- A type.
- Visibility of an
Item
. - One
where
clause.
Constants§
- The version of JSON output that this crate represents.
Type Aliases§
- Type alias for a hashmap using the
fx
hash algorithm.