#![cfg_attr(docsrs, feature(doc_cfg))]
pub mod error;
pub use error::{ErrorReport, RecvError, SendError};
pub mod channel;
pub mod utils;
#[cfg(feature = "ipc")]
#[cfg_attr(docsrs, doc(cfg(feature = "ipc")))]
pub mod codec;
#[cfg(feature = "identifier")]
#[cfg_attr(docsrs, doc(cfg(feature = "identifier")))]
pub mod stable_type_id;
#[cfg(feature = "identifier")]
#[cfg_attr(docsrs, doc(cfg(feature = "identifier")))]
pub use stable_type_id::{StableId, StableTypeId};
pub mod actor;
pub use actor::{Actor, ActorContext, ActorId, ActorState, JoinHandle, Stopping};
#[cfg(feature = "ipc")]
#[cfg_attr(docsrs, doc(cfg(feature = "ipc")))]
pub use actor::{RemoteAddressable, RemoteSpawnable};
mod context;
pub use context::{Context, DEFAULT_MAILBOX_CAPACITY};
pub mod address;
#[cfg(feature = "ipc")]
#[cfg_attr(docsrs, doc(cfg(feature = "ipc")))]
pub use address::RemoteProxy;
pub use address::{Address, Recipient, Sender, SenderInfo};
pub mod message;
#[cfg(feature = "identifier")]
#[cfg_attr(docsrs, doc(cfg(feature = "identifier")))]
pub use message::MessageId;
pub use message::{Handler, Message, MessageResponse};
pub mod envelope;
mod signal;
pub use signal::Signal;
pub mod supervisor;
#[cfg(feature = "observer")]
#[cfg_attr(docsrs, doc(cfg(feature = "observer")))]
pub mod observer;
#[cfg(feature = "cron")]
#[cfg_attr(docsrs, doc(cfg(feature = "cron")))]
pub mod cron;
#[cfg(feature = "derive")]
#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
pub use acktor_derive::{Message, MessageResponse};
#[cfg(all(feature = "derive", feature = "identifier"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "derive", feature = "identifier"))))]
pub use acktor_derive::{MessageId, StableId};
#[cfg(all(feature = "derive", feature = "ipc"))]
#[cfg_attr(docsrs, doc(cfg(all(feature = "derive", feature = "ipc"))))]
pub use acktor_derive::{RemoteAddressable, remote};
#[doc(hidden)]
#[cfg(feature = "ipc")]
pub use bytes;
#[doc(hidden)]
#[cfg(feature = "identifier")]
pub use sha2_const;
#[doc(hidden)]
#[cfg(feature = "ipc")]
pub use tracing;
#[cfg(test)]
pub(crate) use utils::test_utils;