Enum rustdoc_json_types::Variant
source · pub enum Variant {
Plain(Option<Discriminant>),
Tuple(Vec<Option<Id>>),
Struct {
fields: Vec<Id>,
fields_stripped: bool,
},
}
Variants§
Plain(Option<Discriminant>)
A variant with no parentheses, and possible discriminant.
enum Demo {
PlainVariant,
PlainWithDiscriminant = 1,
}
Tuple(Vec<Option<Id>>)
A variant with unnamed fields.
Unlike most of json, #[doc(hidden)]
fields will be given as None
instead of being omitted, because order matters.
enum Demo {
TupleVariant(i32),
EmptyTupleVariant(),
}
Struct
A variant with named fields.
enum Demo {
StructVariant { x: i32 },
EmptyStructVariant {},
}
Trait Implementations§
source§impl<'de> Deserialize<'de> for Variant
impl<'de> Deserialize<'de> for Variant
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Variant
impl StructuralEq for Variant
impl StructuralPartialEq for Variant
Auto Trait Implementations§
impl RefUnwindSafe for Variant
impl Send for Variant
impl Sync for Variant
impl Unpin for Variant
impl UnwindSafe for Variant
Blanket Implementations§
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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: 56 bytes
Size for each variant:
Plain
: 55 bytesTuple
: 31 bytesStruct
: 31 bytes