Enum rustdoc::clean::types::ConstantKind [−][src]
pub(crate) enum ConstantKind {
TyConst {
expr: String,
},
Anonymous {
body: BodyId,
},
Extern {
def_id: DefId,
},
Local {
def_id: DefId,
body: BodyId,
},
}
Variants
This is the wrapper around ty::Const
for a non-local constant. Because it doesn’t have a
BodyId
, we need to handle it on its own.
Note that ty::Const
includes generic parameters, and may not always be uniquely identified
by a DefId. So this field must be different from Extern
.
Fields of TyConst
expr: String
A constant (expression) that’s not an item or associated item. These are usually found nested inside types (e.g., array lengths) or expressions (e.g., repeat counts), and also used to define explicit discriminant values for enum variants.
Fields of Anonymous
body: BodyId
A constant from a different crate.
Fields of Extern
def_id: DefId
const FOO: u32 = ...;
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ConstantKind
impl Send for ConstantKind
impl Sync for ConstantKind
impl Unpin for ConstantKind
impl UnwindSafe for ConstantKind
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
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: 32 bytes
Size for each variant:
TyConst
: 28 bytesAnonymous
: 8 bytesExtern
: 8 bytesLocal
: 16 bytes