# actix_web::dev::Drain - Rust
API documentation for the Rust `Drain` struct in crate `actix_web`.
Keywords: rust, rustlang, rust-lang, Drain

# Struct actix_web::dev::Drain [−] [src]

    pub struct Drain<A> { /* fields omitted */ }

Consume a future

## Methods

###

`impl<A> Drain<A>`

[src]

####

`pub fn new(fut: Receiver<()>) -> Self`

[src]

Create a drain from a future

## Trait Implementations

###

`impl<A: Actor> ActorFuture for Drain<A>`

[src]

#### `type Item = ()`

The type of value that this future will resolved with if it is successful. Read more

#### `type Error = ()`

The type of error that this future will resolve with if it fails in a normal fashion. Read more

#### `type Actor = A`

The actor within which this future runs

####

`fn poll( &mut self, _: &mut A, _: &mut <Self::Actor as Actor>::Context ) -> Poll<Self::Item, Self::Error>`

[src]

####

`fn map<F, U>(self, f: F) -> Map<Self, F> where F: FnOnce(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,` |

Map this future's result to a different type, returning a new future of the resulting type. Read more

####

`fn map_err<F, E>(self, f: F) -> MapErr<Self, F> where F: FnOnce(Self::Error, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> E,` |

Map this future's error to a different error, returning a new future.

####

`fn drop_err(self) -> DropErr<Self>` |

Drop this future's error, returning a new future.

####

`fn from_err<E>(self) -> FromErr<Self, E> where E: From<Self::Error>,` |

Map this future's error to any error implementing `From` for this future's `Error`, returning a new future. Read more

####

`fn then<F, B>(self, f: F) -> Then<Self, B, F> where B: IntoActorFuture<Actor = Self::Actor>, F: FnOnce(Result<Self::Item, Self::Error>, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> B,` |

Chain on a computation for when a future finished, passing the result of the future to the provided closure `f`. Read more

####

`fn and_then<F, B>(self, f: F) -> AndThen<Self, B, F> where B: IntoActorFuture<Error = Self::Error, Actor = Self::Actor>, F: FnOnce(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> B,` |

Execute another future after this one has resolved successfully.

####

`fn timeout(self, timeout: Duration, err: Self::Error) -> Timeout<Self>` |

Add timeout to futures chain. Read more

## Auto Trait Implementations

###

`impl<A> Send for Drain<A> where A: Send,`

###

`impl<A> Sync for Drain<A> where A: Sync,`

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)