pub struct ScanParams {Show 13 fields
pub collection: String,
pub alias: Option<String>,
pub filters: Vec<Filter>,
pub projection: Vec<Projection>,
pub sort_keys: Vec<SortKey>,
pub limit: Option<usize>,
pub offset: usize,
pub distinct: bool,
pub window_functions: Vec<WindowSpec>,
pub indexes: Vec<IndexSpec>,
pub temporal: TemporalScope,
pub bitemporal: bool,
pub has_auto_tier: bool,
}Expand description
Parameters for planning a SCAN operation.
Fields§
§collection: String§alias: Option<String>§filters: Vec<Filter>§projection: Vec<Projection>§sort_keys: Vec<SortKey>§limit: Option<usize>§offset: usize§distinct: bool§window_functions: Vec<WindowSpec>§indexes: Vec<IndexSpec>Secondary indexes available on the scan’s collection. Document
engines consult this to rewrite equality-on-indexed-field into
SqlPlan::DocumentIndexLookup. Other engines ignore it today.
temporal: TemporalScopeBitemporal qualifier propagated from plan_sql. Engines without
bitemporal storage support reject a non-default scope via
SqlError::Unsupported — silently ignoring it would return
current-state data when the user asked for history.
bitemporal: boolWhether this collection was created with bitemporal storage. When
true, engines that support bitemporal reads route the scan
through versioned storage; when false, a non-default
Self::temporal is rejected.
has_auto_tier: boolWhether the collection has a retention policy with AUTO_TIER on. A timeseries scan then carries the policy’s tiers, so a raw read of a range only the tiers hold is refused.
Auto Trait Implementations§
impl Freeze for ScanParams
impl RefUnwindSafe for ScanParams
impl Send for ScanParams
impl Sync for ScanParams
impl Unpin for ScanParams
impl UnsafeUnpin for ScanParams
impl UnwindSafe for ScanParams
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.