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

# Struct actix_web::actix::actix::Recipient [−]

    pub struct Recipient<M> where
        M: Message + Message + Send,
        <M as Message>::Result: Send,  { /* fields omitted */ }

`Recipient` type allows to send one specific message to an actor.

You can get recipient with `Addr<_, _>::recipient()` method. It is possible to use `Clone::clone()` method to get cloned recipient.

## Methods

###

`impl<M> Recipient<M> where M: Message + Send, <M as Message>::Result: Send,`

####

`pub fn do_send(&self, msg: M) -> Result<(), SendError<M>>` |

Send message

Deliver message even if recipient's mailbox is full

####

`pub fn try_send(&self, msg: M) -> Result<(), SendError<M>>` |

Try send message

This method fails if actor's mailbox is full or closed. This method register current task in receivers queue.

####

`pub fn send(&self, msg: M) -> RecipientRequest<M>` |

Send message and asynchronously wait for response.

Communication channel to the actor is bounded. if returned `Request` object get dropped, message cancels.

## Trait Implementations

###

`impl<M> Eq for Recipient<M> where M: Message + Send, <M as Message>::Result: Send,`

###

`impl<M> PartialEq<Recipient<M>> for Recipient<M> where M: Message + Send, <M as Message>::Result: Send,`

####

`fn eq(&self, other: &Recipient<M>) -> bool` |

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

####

`#[must_use] fn ne(&self, other: &Rhs) -> bool`

1.0.0
[src]

This method tests for `!=`.

###

`impl<M> Hash for Recipient<M> where M: Message + Send, <M as Message>::Result: Send,`

####

`fn hash<H>(&self, state: &mut H) where H: Hasher,` |

Feeds this value into the given [`Hasher`]. Read more

####

`fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher,`

1.3.0
[src]

Feeds a slice of this type into the given [`Hasher`]. Read more

###

`impl<M> Clone for Recipient<M> where M: Message + Send, <M as Message>::Result: Send,`

####

`fn clone(&self) -> Recipient<M>` |

Returns a copy of the value. Read more

####

`fn clone_from(&mut self, source: &Self)`

1.0.0
[src]

Performs copy-assignment from `source`. Read more

## Auto Trait Implementations

###

`impl<M> Send for Recipient<M>`

###

`impl<M> !Sync for Recipient<M>`

# 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`)