[−][src]Struct http::Extensions
A type map of protocol extensions.
Extensions
can be used by Request
and Response
to store
extra data derived from the underlying protocol.
Implementations
impl Extensions
[src]
pub fn new() -> Extensions
[src]
Create an empty Extensions
.
pub fn insert<T: Send + Sync + 'static>(&mut self, val: T) -> Option<T>
[src]
Insert a type into this Extensions
.
If a extension of this type already existed, it will be returned.
Example
let mut ext = Extensions::new(); assert!(ext.insert(5i32).is_none()); assert!(ext.insert(4u8).is_none()); assert_eq!(ext.insert(9i32), Some(5i32));
pub fn get<T: Send + Sync + 'static>(&self) -> Option<&T>
[src]
Get a reference to a type previously inserted on this Extensions
.
Example
let mut ext = Extensions::new(); assert!(ext.get::<i32>().is_none()); ext.insert(5i32); assert_eq!(ext.get::<i32>(), Some(&5i32));
pub fn get_mut<T: Send + Sync + 'static>(&mut self) -> Option<&mut T>
[src]
Get a mutable reference to a type previously inserted on this Extensions
.
Example
let mut ext = Extensions::new(); ext.insert(String::from("Hello")); ext.get_mut::<String>().unwrap().push_str(" World"); assert_eq!(ext.get::<String>().unwrap(), "Hello World");
pub fn remove<T: Send + Sync + 'static>(&mut self) -> Option<T>
[src]
Remove a type from this Extensions
.
If a extension of this type existed, it will be returned.
Example
let mut ext = Extensions::new(); ext.insert(5i32); assert_eq!(ext.remove::<i32>(), Some(5i32)); assert!(ext.get::<i32>().is_none());
pub fn clear(&mut self)
[src]
Clear the Extensions
of all inserted extensions.
Example
let mut ext = Extensions::new(); ext.insert(5i32); ext.clear(); assert!(ext.get::<i32>().is_none());
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Extensions
impl Send for Extensions
impl Sync for Extensions
impl Unpin for Extensions
impl !UnwindSafe for Extensions
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,