pub trait Addr: DowncastSync + Sync {
// Required methods
fn send<'life0, 'async_trait, M>(
&'life0 self,
msg: M,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: Sized + Forwarder<M> + 'async_trait,
M: 'async_trait + Message,
'life0: 'async_trait;
fn send_and_wait<'life0, 'async_trait, M>(
&'life0 self,
msg: M,
) -> Pin<Box<dyn Future<Output = Result<M::Result, M::Error>> + Send + 'async_trait>>
where Self: Sized + Forwarder<M> + 'async_trait,
M: 'async_trait + Message,
'life0: 'async_trait;
fn state(&self) -> State;
fn close(&self);
fn close_future(&self) -> Notified<'_>;
fn id(&self) -> ActorId;
// Provided methods
fn is_started(&self) -> bool { ... }
fn is_closed(&self) -> bool { ... }
}Expand description
A restricted interface of Actor that provides send mechanics and state reads.
Required Methods§
Sourcefn send<'life0, 'async_trait, M>(
&'life0 self,
msg: M,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
fn send<'life0, 'async_trait, M>( &'life0 self, msg: M, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
Sends a typed message to the actor.
Sourcefn send_and_wait<'life0, 'async_trait, M>(
&'life0 self,
msg: M,
) -> Pin<Box<dyn Future<Output = Result<M::Result, M::Error>> + Send + 'async_trait>>
fn send_and_wait<'life0, 'async_trait, M>( &'life0 self, msg: M, ) -> Pin<Box<dyn Future<Output = Result<M::Result, M::Error>> + Send + 'async_trait>>
Sends a typed message to the actor and awaits the result.
Sourcefn state(&self) -> State
fn state(&self) -> State
Returns the current state of the actor.
§Warning
Beware of potential races, given that the state can be changed after you fetched it.
Sourcefn close(&self)
fn close(&self)
Closes the actor and gives the actor time to process the already-queued up messages.
Sourcefn close_future(&self) -> Notified<'_>
fn close_future(&self) -> Notified<'_>
Returns this actor’s close future.
Provided Methods§
Sourcefn is_started(&self) -> bool
fn is_started(&self) -> bool
Checks if the actor has been started.
Implementations§
Source§impl dyn Addr
impl dyn Addr
Sourcepub fn is<__T: Addr>(&self) -> bool
pub fn is<__T: Addr>(&self) -> bool
Returns true if the trait object wraps an object of type __T.
Sourcepub fn downcast<__T: Addr>(self: Box<Self>) -> Result<Box<__T>, Box<Self>>
pub fn downcast<__T: Addr>(self: Box<Self>) -> Result<Box<__T>, Box<Self>>
Returns a boxed object from a boxed trait object if the underlying object is of type
__T. Returns the original boxed trait if it isn’t.
Sourcepub fn downcast_rc<__T: Addr>(self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>
pub fn downcast_rc<__T: Addr>(self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>
Returns an Rc-ed object from an Rc-ed trait object if the underlying object is of
type __T. Returns the original Rc-ed trait if it isn’t.
Sourcepub fn downcast_ref<__T: Addr>(&self) -> Option<&__T>
pub fn downcast_ref<__T: Addr>(&self) -> Option<&__T>
Returns a reference to the object within the trait object if it is of type __T, or
None if it isn’t.
Sourcepub fn downcast_mut<__T: Addr>(&mut self) -> Option<&mut __T>
pub fn downcast_mut<__T: Addr>(&mut self) -> Option<&mut __T>
Returns a mutable reference to the object within the trait object if it is of type
__T, or None if it isn’t.