Trait libafl::common::HasNamedMetadata
source · pub trait HasNamedMetadata {
// Required methods
fn named_metadata_map(&self) -> &NamedSerdeAnyMap;
fn named_metadata_map_mut(&mut self) -> &mut NamedSerdeAnyMap;
// Provided methods
fn add_named_metadata<M>(&mut self, name: &str, meta: M)
where M: SerdeAny { ... }
fn remove_named_metadata<M>(&mut self, name: &str) -> Option<Box<M>>
where M: SerdeAny { ... }
fn named_metadata_or_insert_with<M>(
&mut self,
name: &str,
default: impl FnOnce() -> M
) -> &mut M
where M: SerdeAny { ... }
fn has_named_metadata<M>(&self, name: &str) -> bool
where M: SerdeAny { ... }
fn named_metadata<M>(&self, name: &str) -> Result<&M, Error>
where M: SerdeAny { ... }
fn named_metadata_mut<M>(&mut self, name: &str) -> Result<&mut M, Error>
where M: SerdeAny { ... }
}
Expand description
Trait for elements offering named metadata
Required Methods§
sourcefn named_metadata_map(&self) -> &NamedSerdeAnyMap
fn named_metadata_map(&self) -> &NamedSerdeAnyMap
A map, storing all metadata
sourcefn named_metadata_map_mut(&mut self) -> &mut NamedSerdeAnyMap
fn named_metadata_map_mut(&mut self) -> &mut NamedSerdeAnyMap
A map, storing all metadata (mutable)
Provided Methods§
sourcefn add_named_metadata<M>(&mut self, name: &str, meta: M)where
M: SerdeAny,
fn add_named_metadata<M>(&mut self, name: &str, meta: M)where
M: SerdeAny,
Add a metadata to the metadata map
sourcefn remove_named_metadata<M>(&mut self, name: &str) -> Option<Box<M>>where
M: SerdeAny,
fn remove_named_metadata<M>(&mut self, name: &str) -> Option<Box<M>>where
M: SerdeAny,
Add a metadata to the metadata map
sourcefn named_metadata_or_insert_with<M>(
&mut self,
name: &str,
default: impl FnOnce() -> M
) -> &mut Mwhere
M: SerdeAny,
fn named_metadata_or_insert_with<M>(
&mut self,
name: &str,
default: impl FnOnce() -> M
) -> &mut Mwhere
M: SerdeAny,
Gets metadata, or inserts it using the given construction function default
sourcefn has_named_metadata<M>(&self, name: &str) -> boolwhere
M: SerdeAny,
fn has_named_metadata<M>(&self, name: &str) -> boolwhere
M: SerdeAny,
Check for a metadata
§Note
You likely want to use Self::named_metadata_or_insert_with
for performance reasons.
Object Safety§
This trait is not object safe.