Struct l337::Conn [−][src]
pub struct Conn<C> where
C: ManageConnection,
C::Connection: Send, { pub conn: Option<Live<C::Connection>>, pub pool: Option<Pool<C>>, // some fields omitted }
Expand description
A smart wrapper around a connection which stores it back in the pool when it is dropped.
This can be dereferences to the Service
instance this pool manages, and
also implements Service
itself by delegating.
Fields
conn: Option<Live<C::Connection>>
Actual connection. This should never become a None variant under normal operation. This is an option so we can take the connection on drop, and push it back into the pool
pool: Option<Pool<C>>
Underlying pool. A reference is stored here so we can push the connection back into the pool on drop. This should never become a None variant under normal operation. This is an option so we can take the connection on drop, and push it back into the pool
Trait Implementations
impl<C> Deref for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]
impl<C> Deref for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]type Target = C::Connection
type Target = C::Connection
The resulting type after dereferencing.
impl<C> DerefMut for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]
impl<C> DerefMut for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]impl<C> Drop for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]
impl<C> Drop for Conn<C> where
C: ManageConnection,
C::Connection: Send,
[src]Auto Trait Implementations
impl<C> !RefUnwindSafe for Conn<C>
impl<C> Send for Conn<C>
impl<C> Sync for Conn<C> where
<C as ManageConnection>::Connection: Sync,
<C as ManageConnection>::Connection: Sync,
impl<C> Unpin for Conn<C> where
<C as ManageConnection>::Connection: Unpin,
<C as ManageConnection>::Connection: Unpin,
impl<C> !UnwindSafe for Conn<C>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]