Skip to main content

atomr_core/actor/
mod.rs

1//! The `actor` subsystem.
2//!
3//! Everything user-visible about actors lives here: [`Actor`], [`ActorRef`],
4//! [`ActorSystem`], [`Props`], [`Context`], plus paths/addresses and the
5//! internal `ActorCell` machinery.
6
7mod actor_cell;
8mod actor_ref;
9mod actor_system;
10mod address;
11mod context;
12mod coordinated_shutdown;
13mod deploy;
14mod extensions;
15mod fsm;
16mod inbox;
17mod metadata;
18mod observer;
19mod path;
20mod props;
21mod provider;
22mod remote;
23pub mod scheduler;
24mod sender;
25mod stash;
26mod traits;
27
28pub use actor_cell::{ActorCell, SystemMsg};
29pub use actor_ref::{ActorRef, AskError, UntypedActorRef};
30pub use actor_system::{ActorSystem, ActorSystemError};
31pub use address::Address;
32pub use context::{
33    Context, LifecyclePhase, PhaseMarker, Running, Starting, Stopping, SystemHandle, TypedContext,
34};
35pub use coordinated_shutdown::{CoordinatedShutdown, Phase, PhaseConfig};
36pub use deploy::{Deploy, Scope};
37pub use extensions::{Extension, ExtensionId, Extensions};
38pub use fsm::{FiniteStateMachine, Fsm, FsmBuilder, FsmStopReason, FsmTransition};
39pub use inbox::Inbox;
40pub use metadata::{MessageInterceptor, Metadata, SpanGuard};
41pub use observer::{DeadLetterObserver, SpawnObserver};
42pub use path::{ActorPath, PathElement};
43pub use props::{BoxedProps, Props};
44pub use provider::{ActorRefProvider, LocalActorRefProvider};
45pub use remote::{RemoteProvider, RemoteRef, RemoteSystemMsg, SerializedMessage};
46pub use sender::Sender;
47pub use stash::{BoundedStash, Stash, StashOverflow, StashResult};
48pub use traits::{Actor, MessageEnvelope};