pub struct ExtensionsMap { /* private fields */ }Expand description
Thread-safe, cloneable storage for arbitrary data keyed by strings Uses type erasure (Any) to support any Send + Sync type
Implementations§
Source§impl ExtensionsMap
impl ExtensionsMap
Sourcepub fn get<T: Any + Send + Sync + 'static>(&self, key: &str) -> Option<Arc<T>>
pub fn get<T: Any + Send + Sync + 'static>(&self, key: &str) -> Option<Arc<T>>
Retrieve a value from the extensions map
§Arguments
key- The key to retrieve
§Returns
Some(Arc<T>)if the key exists and the type matchesNoneif the key doesn’t exist or type mismatch occurs
§Example
ⓘ
if let Some(user_id) = ctx.extensions.get::<u64>("user_id") {
println!("User ID: {}", user_id);
}Sourcepub fn contains_key(&self, key: &str) -> bool
pub fn contains_key(&self, key: &str) -> bool
Check if a key exists in the extensions map
Trait Implementations§
Source§impl Clone for ExtensionsMap
impl Clone for ExtensionsMap
Source§fn clone(&self) -> ExtensionsMap
fn clone(&self) -> ExtensionsMap
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExtensionsMap
impl Debug for ExtensionsMap
Auto Trait Implementations§
impl Freeze for ExtensionsMap
impl !RefUnwindSafe for ExtensionsMap
impl Send for ExtensionsMap
impl Sync for ExtensionsMap
impl Unpin for ExtensionsMap
impl UnsafeUnpin for ExtensionsMap
impl !UnwindSafe for ExtensionsMap
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more