Struct http::Extensions [−][src]
pub struct Extensions { /* fields omitted */ }
Expand description
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]
impl Extensions
[src]pub fn new() -> 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]
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]
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]
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]
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());
Trait Implementations
impl Debug for Extensions
[src]
impl Debug for Extensions
[src]impl Default for Extensions
[src]
impl Default for Extensions
[src]fn default() -> Extensions
[src]
fn default() -> Extensions
[src]Returns the “default value” for a type. Read more