pub trait Dispatch {
// Required methods
fn task_by_id(&self, task_idx: usize) -> Result<Task, SimError>;
fn set_task_active(&self, task_idx: usize) -> SimResult;
fn set_task_completed(&self, task_idx: usize) -> SimResult;
fn ready_task_indices(
&self,
pe_name: &str,
) -> Result<(bool, Vec<usize>), SimError>;
fn wait_for_change<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn total_tasks_for_pe(&self, pe_name: &str) -> usize;
}Required Methods§
fn task_by_id(&self, task_idx: usize) -> Result<Task, SimError>
fn set_task_active(&self, task_idx: usize) -> SimResult
fn set_task_completed(&self, task_idx: usize) -> SimResult
fn ready_task_indices( &self, pe_name: &str, ) -> Result<(bool, Vec<usize>), SimError>
fn wait_for_change<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn total_tasks_for_pe(&self, pe_name: &str) -> usize
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".