Struct rustcoalescence_scenarios::ScenarioCogs
source · #[non_exhaustive]pub struct ScenarioCogs<M: MathsCore, G: RngCore<M>, O: Scenario<M, G>> {
pub habitat: O::Habitat,
pub dispersal_sampler: O::DispersalSampler,
pub turnover_rate: O::TurnoverRate,
pub speciation_probability: O::SpeciationProbability,
pub origin_sampler_auxiliary: O::OriginSamplerAuxiliary,
pub decomposition_auxiliary: O::DecompositionAuxiliary,
/* private fields */
}
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.habitat: O::Habitat
§dispersal_sampler: O::DispersalSampler
§turnover_rate: O::TurnoverRate
§speciation_probability: O::SpeciationProbability
§origin_sampler_auxiliary: O::OriginSamplerAuxiliary
§decomposition_auxiliary: O::DecompositionAuxiliary
Trait Implementations§
Auto Trait Implementations§
impl<M, G, O> Freeze for ScenarioCogs<M, G, O>where
<O as Scenario<M, G>>::Habitat: Freeze,
<O as Scenario<M, G>>::DispersalSampler: Freeze,
<O as Scenario<M, G>>::TurnoverRate: Freeze,
<O as Scenario<M, G>>::SpeciationProbability: Freeze,
<O as Scenario<M, G>>::OriginSamplerAuxiliary: Freeze,
<O as Scenario<M, G>>::DecompositionAuxiliary: Freeze,
impl<M, G, O> RefUnwindSafe for ScenarioCogs<M, G, O>where
<O as Scenario<M, G>>::Habitat: RefUnwindSafe,
<O as Scenario<M, G>>::DispersalSampler: RefUnwindSafe,
<O as Scenario<M, G>>::TurnoverRate: RefUnwindSafe,
<O as Scenario<M, G>>::SpeciationProbability: RefUnwindSafe,
<O as Scenario<M, G>>::OriginSamplerAuxiliary: RefUnwindSafe,
<O as Scenario<M, G>>::DecompositionAuxiliary: RefUnwindSafe,
M: RefUnwindSafe,
G: RefUnwindSafe,
O: RefUnwindSafe,
impl<M, G, O> Send for ScenarioCogs<M, G, O>
impl<M, G, O> Sync for ScenarioCogs<M, G, O>where
<O as Scenario<M, G>>::Habitat: Sync,
<O as Scenario<M, G>>::DispersalSampler: Sync,
<O as Scenario<M, G>>::TurnoverRate: Sync,
<O as Scenario<M, G>>::SpeciationProbability: Sync,
<O as Scenario<M, G>>::OriginSamplerAuxiliary: Sync,
<O as Scenario<M, G>>::DecompositionAuxiliary: Sync,
G: Sync,
O: Sync,
impl<M, G, O> Unpin for ScenarioCogs<M, G, O>where
<O as Scenario<M, G>>::Habitat: Unpin,
<O as Scenario<M, G>>::DispersalSampler: Unpin,
<O as Scenario<M, G>>::TurnoverRate: Unpin,
<O as Scenario<M, G>>::SpeciationProbability: Unpin,
<O as Scenario<M, G>>::OriginSamplerAuxiliary: Unpin,
<O as Scenario<M, G>>::DecompositionAuxiliary: Unpin,
M: Unpin,
G: Unpin,
O: Unpin,
impl<M, G, O> UnwindSafe for ScenarioCogs<M, G, O>where
<O as Scenario<M, G>>::Habitat: UnwindSafe,
<O as Scenario<M, G>>::DispersalSampler: UnwindSafe,
<O as Scenario<M, G>>::TurnoverRate: UnwindSafe,
<O as Scenario<M, G>>::SpeciationProbability: UnwindSafe,
<O as Scenario<M, G>>::OriginSamplerAuxiliary: UnwindSafe,
<O as Scenario<M, G>>::DecompositionAuxiliary: UnwindSafe,
M: UnwindSafe,
G: UnwindSafe,
O: UnwindSafe,
Blanket Implementations§
§impl<T> Backup for Twhere
T: Clone,
impl<T> Backup for Twhere
T: Clone,
default unsafe fn backup_unchecked(&self) -> T
default unsafe fn __contracts_impl_backup_unchecked(&self) -> T
fn backup(&self) -> BackedUp<Self>
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> ExtractDiscriminant for T
impl<T> ExtractDiscriminant for T
§type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
type Discriminant = <T as ExtractDiscriminantSpec<<T as DiscriminantKind>::Discriminant>>::Ty
The type of the discriminant, which must satisfy the trait bounds
required by
core::mem::Discriminant
. Read moresource§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more