pub trait LocalPartition<'p, R: Reporter>: Sized {
type Reporter: Reporter;
type IsLive: Boolean;
type ImmigrantIterator<'a>: Iterator<Item = MigratingLineage>
where Self: 'a,
'p: 'a;
// Required methods
fn get_reporter(&mut self) -> &mut Self::Reporter;
fn get_partition(&self) -> Partition;
fn migrate_individuals<'a, E: Iterator<Item = (u32, MigratingLineage)>>(
&'a mut self,
emigrants: &mut E,
emigration_mode: MigrationMode,
immigration_mode: MigrationMode
) -> Self::ImmigrantIterator<'a>
where 'p: 'a;
fn reduce_vote_any(&mut self, vote: bool) -> bool;
fn reduce_vote_min_time(
&mut self,
local_time: PositiveF64
) -> Result<PositiveF64, PositiveF64>;
fn wait_for_termination(&mut self) -> ControlFlow<(), ()>;
fn report_progress_sync(&mut self, remaining: u64);
}
Required Associated Types§
type Reporter: Reporter
type IsLive: Boolean
type ImmigrantIterator<'a>: Iterator<Item = MigratingLineage> where Self: 'a, 'p: 'a
Required Methods§
fn get_reporter(&mut self) -> &mut Self::Reporter
fn get_partition(&self) -> Partition
fn migrate_individuals<'a, E: Iterator<Item = (u32, MigratingLineage)>>(
&'a mut self,
emigrants: &mut E,
emigration_mode: MigrationMode,
immigration_mode: MigrationMode
) -> Self::ImmigrantIterator<'a>where
'p: 'a,
fn reduce_vote_any(&mut self, vote: bool) -> bool
fn reduce_vote_min_time( &mut self, local_time: PositiveF64 ) -> Result<PositiveF64, PositiveF64>
fn wait_for_termination(&mut self) -> ControlFlow<(), ()>
fn report_progress_sync(&mut self, remaining: u64)
Object Safety§
This trait is not object safe.