Skip to main content

reifydb_runtime/actor/system/
mod.rs

1// SPDX-License-Identifier: Apache-2.0
2// Copyright (c) 2025 ReifyDB
3
4#[cfg(reifydb_target = "dst")]
5pub mod dst;
6
7#[cfg(all(not(reifydb_single_threaded), not(reifydb_target = "dst")))]
8pub mod native;
9
10#[cfg(all(reifydb_single_threaded, not(reifydb_target = "dst")))]
11pub mod wasm;
12
13#[cfg(reifydb_target = "dst")]
14pub use dst::{ActorHandle, ActorSystem, JoinError};
15#[cfg(all(not(reifydb_single_threaded), not(reifydb_target = "dst")))]
16pub use native::{ActorHandle, ActorSystem, JoinError};
17#[cfg(all(reifydb_single_threaded, not(reifydb_target = "dst")))]
18pub use wasm::{ActorHandle, ActorSystem, JoinError};
19
20#[derive(Debug, Clone, Default)]
21pub struct ActorConfig {
22	pub mailbox_capacity: Option<usize>,
23}
24
25impl ActorConfig {
26	pub fn new() -> Self {
27		Self::default()
28	}
29
30	pub fn mailbox_capacity(mut self, capacity: usize) -> Self {
31		self.mailbox_capacity = Some(capacity);
32		self
33	}
34}