Struct gotham::middleware::session::SessionData
source · pub struct SessionData<T>{ /* private fields */ }
Expand description
The wrapping type for application session data.
The application will receive a SessionData<T>
via the State
container, where T
is the
session type given to NewSessionMiddleware
.
§Examples
#[derive(Default, Deserialize, Serialize)]
struct MySessionType {
items: Vec<String>,
}
fn my_handler(state: State) -> (State, Response<Body>) {
// The `Router` has a `NewSessionMiddleware<_, MySessionType>` in a pipeline which is
// active for this handler.
let body = {
let session = SessionData::<MySessionType>::borrow_from(&state);
format!("{:?}", session.items)
};
let response = create_response(&state,
StatusCode::OK,
mime::TEXT_PLAIN,
body);
(state, response)
}
Implementations§
source§impl<T> SessionData<T>
impl<T> SessionData<T>
Trait Implementations§
source§impl<T> Deref for SessionData<T>
impl<T> Deref for SessionData<T>
source§impl<T> DerefMut for SessionData<T>
impl<T> DerefMut for SessionData<T>
impl<T> StateData for SessionData<T>
Auto Trait Implementations§
impl<T> Freeze for SessionData<T>where
T: Freeze,
impl<T> !RefUnwindSafe for SessionData<T>
impl<T> Send for SessionData<T>
impl<T> !Sync for SessionData<T>
impl<T> Unpin for SessionData<T>where
T: Unpin,
impl<T> !UnwindSafe for SessionData<T>
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> FromState for Twhere
T: StateData,
impl<T> FromState for Twhere
T: StateData,
source§fn try_borrow_from(state: &State) -> Option<&T>
fn try_borrow_from(state: &State) -> Option<&T>
Tries to borrow a value from the
State
storage. Read moresource§fn try_borrow_mut_from(state: &mut State) -> Option<&mut T>
fn try_borrow_mut_from(state: &mut State) -> Option<&mut T>
Tries to mutably borrow a value from the
State
storage. Read moresource§fn borrow_mut_from(state: &mut State) -> &mut T
fn borrow_mut_from(state: &mut State) -> &mut T
Mutably borrows a value from the
State
storage. Read more