pub trait VariantAccess<'de>: Sized {
type Error: Error;
// Required method
fn deserialize_seed<T>(
self,
seed: T,
) -> Result<<T as DeserializeSeed<'de>>::Output, Self::Error>
where T: DeserializeSeed<'de>;
// Provided method
fn deserialize<T>(self) -> Result<T, Self::Error>
where T: Deserialize<'de> { ... }
}Expand description
A visitor passed from SumAccess to SumVisitor::visit_sum
which the latter uses to deserialize the data of a selected variant.
Required Associated Types§
Required Methods§
Sourcefn deserialize_seed<T>(
self,
seed: T,
) -> Result<<T as DeserializeSeed<'de>>::Output, Self::Error>where
T: DeserializeSeed<'de>,
fn deserialize_seed<T>(
self,
seed: T,
) -> Result<<T as DeserializeSeed<'de>>::Output, Self::Error>where
T: DeserializeSeed<'de>,
Called when deserializing the contents of a sum variant, and provided with a seed value.
Provided Methods§
Sourcefn deserialize<T>(self) -> Result<T, Self::Error>where
T: Deserialize<'de>,
fn deserialize<T>(self) -> Result<T, Self::Error>where
T: Deserialize<'de>,
Called when deserializing the contents of a sum variant.
This method exists as a convenience for Deserialize implementations.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.