pub trait LutetiumActorSystem:
'static
+ Sync
+ Send {
// Required methods
fn spawn<'life0, 'async_trait, A>(
&'life0 self,
id: impl 'async_trait + IntoActorId,
actor: A,
) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>
where A: 'async_trait + Actor,
Self: 'async_trait,
'life0: 'async_trait;
fn spawn_from<'life0, 'async_trait, A, M>(
&'life0 self,
from: M,
) -> Pin<Box<dyn Future<Output = Result<Result<ActorRef<A>, ActorError>, A::Rejection>> + Send + 'async_trait>>
where A: FromMessage<M> + 'async_trait + Actor,
M: 'async_trait + Message,
Self: 'async_trait,
'life0: 'async_trait;
fn try_spawn<'life0, 'async_trait, A, T>(
&'life0 self,
id: T::Identifier,
into: T,
) -> Pin<Box<dyn Future<Output = Result<Result<ActorRef<A>, ActorError>, T::Rejection>> + Send + 'async_trait>>
where A: 'async_trait + Actor,
T: 'async_trait + TryIntoActor<A>,
Self: 'async_trait,
'life0: 'async_trait;
fn shutdown<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 (impl 'async_trait + ToActorId),
) -> Pin<Box<dyn Future<Output = Result<(), ActorError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn shutdown_all<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ActorError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn find<'life0, 'async_trait, A>(
&'life0 self,
id: impl 'async_trait + ToActorId,
) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>
where A: 'async_trait + Actor,
Self: 'async_trait,
'life0: 'async_trait;
fn find_or<'life0, 'async_trait, A, I, Fn, Fut>(
&'life0 self,
id: I,
or_nothing: Fn,
) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>
where Fn: FnOnce(I) -> Fut + 'static + Sync + Send + 'async_trait,
Fut: Future<Output = A> + 'static + Sync + Send + 'async_trait,
A: 'async_trait + Actor,
I: 'async_trait + ToActorId,
Self: 'async_trait,
'life0: 'async_trait;
}Required Methods§
fn spawn<'life0, 'async_trait, A>(
&'life0 self,
id: impl 'async_trait + IntoActorId,
actor: A,
) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>where
A: 'async_trait + Actor,
Self: 'async_trait,
'life0: 'async_trait,
fn spawn_from<'life0, 'async_trait, A, M>(
&'life0 self,
from: M,
) -> Pin<Box<dyn Future<Output = Result<Result<ActorRef<A>, ActorError>, A::Rejection>> + Send + 'async_trait>>where
A: FromMessage<M> + 'async_trait + Actor,
M: 'async_trait + Message,
Self: 'async_trait,
'life0: 'async_trait,
fn try_spawn<'life0, 'async_trait, A, T>(
&'life0 self,
id: T::Identifier,
into: T,
) -> Pin<Box<dyn Future<Output = Result<Result<ActorRef<A>, ActorError>, T::Rejection>> + Send + 'async_trait>>where
A: 'async_trait + Actor,
T: 'async_trait + TryIntoActor<A>,
Self: 'async_trait,
'life0: 'async_trait,
fn shutdown<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 (impl 'async_trait + ToActorId),
) -> Pin<Box<dyn Future<Output = Result<(), ActorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn shutdown_all<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), ActorError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn find<'life0, 'async_trait, A>(
&'life0 self,
id: impl 'async_trait + ToActorId,
) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>where
A: 'async_trait + Actor,
Self: 'async_trait,
'life0: 'async_trait,
fn find_or<'life0, 'async_trait, A, I, Fn, Fut>( &'life0 self, id: I, or_nothing: Fn, ) -> Pin<Box<dyn Future<Output = Result<ActorRef<A>, ActorError>> + Send + 'async_trait>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.