pub trait RunnableInterface {
type Value: ValueInterface;
type State: StateInterface<Value = Self::Value>;
// Required methods
fn input_count(&self) -> Result<usize>;
fn output_count(&self) -> Result<usize>;
fn spawn_state(&self) -> Result<Self::State>;
// Provided method
fn run<I, V, E>(&self, inputs: I) -> Result<Vec<Self::Value>>
where I: IntoIterator<Item = V>,
V: TryInto<Self::Value, Error = E>,
E: Into<Error> { ... }
}
Required Associated Types§
type Value: ValueInterface
type State: StateInterface<Value = Self::Value>
Required Methods§
fn input_count(&self) -> Result<usize>
fn output_count(&self) -> Result<usize>
fn spawn_state(&self) -> Result<Self::State>
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.