pub trait ContainerOf2State<State: DataLike, Part1: DataLike, Part2: DataLike, Payload: DataLike> {
// Required method
fn reaction(
&self,
instance: usize,
payload: &Payload,
parts1: &[Part1],
parts2: &[Part2],
) -> Reaction<State, Payload>;
// Provided methods
fn activity(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> Activity<Payload> { ... }
fn is_deferring(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> bool { ... }
fn invalid_because(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> Option<&'static str> { ... }
fn max_in_flight_messages(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> Option<usize> { ... }
}Expand description
A trait for a container agent state.
Required Methods§
Provided Methods§
Sourcefn activity(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> Activity<Payload>
fn activity( &self, _instance: usize, _parts1: &[Part1], _parts2: &[Part2], ) -> Activity<Payload>
Return the actions that may be taken by an agent with some state when time passes.
Sourcefn is_deferring(
&self,
_instance: usize,
_parts1: &[Part1],
_parts2: &[Part2],
) -> bool
fn is_deferring( &self, _instance: usize, _parts1: &[Part1], _parts2: &[Part2], ) -> bool
Whether any agent in this state is deferring messages.