pub enum PartitionOrder {
Unchanged,
SmallestFirst,
LargestFirst,
Random,
}Expand description
Iteration order for a resolved partition list — the optional
trailing keyword of a spec ("fib:5 largest_first").
unchanged and random are a common-subset vocabulary
shared conceptually with comprehension traversal orders
(polydat/docs/design/comprehension_forms.md) — where a word exists in both places it means the
same thing, while comprehensions additionally offer
algorithm-specific strategies (sobol, halton, lhs, …) that
do not apply to partition lists.
The size sorts are named for their axis: partition lists are
positionally contiguous by construction, so an unqualified
“ascending” would be ambiguous between ordinal position
(always the generation order — an alias of unchanged) and
size. smallest_first / largest_first key on
cardinality, unambiguously (stable — ties keep
generation order). The bare words ascending / descending
are rejected at parse time with a diagnostic naming these.
Random is a deterministic shuffle seeded from the spec
text, so the same spec yields the same order on every run.
Variants§
Unchanged
Generation order (left-to-right as resolved). The default.
SmallestFirst
Smallest cardinality first (stable).
LargestFirst
Largest cardinality first (stable).
Random
Deterministic shuffle, seeded from the spec text.
Trait Implementations§
Source§impl Clone for PartitionOrder
impl Clone for PartitionOrder
Source§fn clone(&self) -> PartitionOrder
fn clone(&self) -> PartitionOrder
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for PartitionOrder
Source§impl Debug for PartitionOrder
impl Debug for PartitionOrder
Source§impl Default for PartitionOrder
impl Default for PartitionOrder
Source§fn default() -> PartitionOrder
fn default() -> PartitionOrder
Source§impl Display for PartitionOrder
impl Display for PartitionOrder
impl Eq for PartitionOrder
Source§impl PartialEq for PartitionOrder
impl PartialEq for PartitionOrder
impl StructuralPartialEq for PartitionOrder
Auto Trait Implementations§
impl Freeze for PartitionOrder
impl RefUnwindSafe for PartitionOrder
impl Send for PartitionOrder
impl Sync for PartitionOrder
impl Unpin for PartitionOrder
impl UnsafeUnpin for PartitionOrder
impl UnwindSafe for PartitionOrder
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§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> ⓘ
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> ⓘ
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString. Read more