pub trait HeaderObjTrait:
Sync
+ Send
+ Any
+ Debug {
// Required methods
fn name(&self) -> HeaderName;
fn is_max_one(&self) -> bool;
fn validator(&self) -> Option<HeaderMapValidator>;
fn encode(
&self,
encoder: &mut EncodingWriter<'_>,
) -> Result<(), EncodingError>;
fn boxed_clone(&self) -> Box<HeaderObj>;
}Required Methods§
fn name(&self) -> HeaderName
fn is_max_one(&self) -> bool
fn validator(&self) -> Option<HeaderMapValidator>
fn encode(&self, encoder: &mut EncodingWriter<'_>) -> Result<(), EncodingError>
fn boxed_clone(&self) -> Box<HeaderObj>
Implementations§
Source§impl dyn HeaderObjTrait
impl dyn HeaderObjTrait
pub fn is<H>(&self) -> boolwhere
H: HeaderKind,
pub fn downcast_ref<H>(&self) -> Option<&Header<H>>where
H: HeaderKind,
pub fn downcast_mut<H>(&mut self) -> Option<&mut Header<H>>where
H: HeaderKind,
Trait Implementations§
Source§impl HeaderObjTraitBoxExt for Box<dyn HeaderObjTrait>
impl HeaderObjTraitBoxExt for Box<dyn HeaderObjTrait>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".