pub enum OrderingProperty {
Unknown,
AscendingNullsLast(Vec<usize>),
}Expand description
Physical ordering guaranteed by an operator.
This is a certificate produced by the physical plan, not a runtime guess from inspecting materialized rows. Merge consumers may use only the leading key prefix and NULL ordering they explicitly require.
Variants§
Unknown
The operator makes no ordering guarantee.
AscendingNullsLast(Vec<usize>)
Rows are ascending on the listed key prefix, with NULL values last.
Implementations§
Source§impl OrderingProperty
impl OrderingProperty
Sourcepub fn ascending_nulls_last(key_indices: Vec<usize>) -> Self
pub fn ascending_nulls_last(key_indices: Vec<usize>) -> Self
Create an ascending, NULLS LAST ordering certificate.
Sourcepub fn proves_ascending_nulls_last(&self, required_keys: &[usize]) -> bool
pub fn proves_ascending_nulls_last(&self, required_keys: &[usize]) -> bool
Return whether this certificate proves the ordering required by merge.
Sourcepub fn remap_outer_projection(&self, columns: &[ColumnSource]) -> Self
pub fn remap_outer_projection(&self, columns: &[ColumnSource]) -> Self
Preserve this certificate through a fused JOIN projection.
Every certified outer key must remain in the projected row. Missing, reordered, or inner-sourced keys fail closed to Unknown.
Trait Implementations§
Source§impl Clone for OrderingProperty
impl Clone for OrderingProperty
Source§fn clone(&self) -> OrderingProperty
fn clone(&self) -> OrderingProperty
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OrderingProperty
impl Debug for OrderingProperty
Source§impl Default for OrderingProperty
impl Default for OrderingProperty
Source§fn default() -> OrderingProperty
fn default() -> OrderingProperty
Returns the “default value” for a type. Read more
impl Eq for OrderingProperty
Source§impl PartialEq for OrderingProperty
impl PartialEq for OrderingProperty
impl StructuralPartialEq for OrderingProperty
Auto Trait Implementations§
impl Freeze for OrderingProperty
impl RefUnwindSafe for OrderingProperty
impl Send for OrderingProperty
impl Sync for OrderingProperty
impl Unpin for OrderingProperty
impl UnsafeUnpin for OrderingProperty
impl UnwindSafe for OrderingProperty
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CompactArcDrop for T
impl<T> CompactArcDrop for T
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
Compare self to
key and return true if they are equal.