mosaik 0.4.2

A Rust runtime for building self-organizing, leaderless distributed systems.
Documentation
use {core::time::Duration, derive_builder::Builder};

/// Configuration options for the functions subsystem.
#[derive(Builder, Clone, Debug)]
#[builder(pattern = "owned", setter(prefix = "with"), derive(Clone, Debug))]
#[builder_struct_attr(doc(hidden))]
pub struct Config {
	/// The default end-to-end call timeout for function invocations. This
	/// bounds the entire call: discovering an eligible handler, connecting,
	/// invoking, and receiving the reply. Callers can override this per
	/// caller instance or per individual call.
	#[builder(default = "Duration::from_secs(30)")]
	pub call_timeout: Duration,
}

impl Config {
	/// Creates a new config builder with default values.
	pub fn builder() -> ConfigBuilder {
		ConfigBuilder::default()
	}
}