pub trait HasFields<'mem, 'facet_lifetime> {
// Required method
fn fields(
&self,
) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)>;
// Provided method
fn fields_for_serialize(
&self,
) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)> { ... }
}Expand description
Trait for types that have field methods
This trait allows code to be written generically over both structs and enums that provide field access and iteration capabilities.
Required Methods§
Sourcefn fields(
&self,
) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)>
fn fields( &self, ) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)>
Iterates over all fields in this type, providing both field metadata and value
Provided Methods§
Sourcefn fields_for_serialize(
&self,
) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)>
fn fields_for_serialize( &self, ) -> impl DoubleEndedIterator<Item = (Field, Peek<'mem, 'facet_lifetime>)>
Iterates over fields in this type that should be included when it is serialized
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.