Skip to main content

ReadProjection

Enum ReadProjection 

Source
pub enum ReadProjection {
    Lookup {
        path: PathBuf,
    },
    RollUp {
        path: PathBuf,
    },
    Tree {
        path: PathBuf,
        depth: Bound,
        include_ignored: bool,
        page: PageRequest,
    },
    Flat {
        selection: EntrySelection,
        shape: RowShape,
        page: PageRequest,
    },
    Aggregate {
        selection: EntrySelection,
        count_cap: u64,
        max_work: u64,
    },
    Report(ReportRequest),
    Continue {
        continuation: ContinuationId,
        page: PageRequest,
    },
    Diagnostics,
}
Expand description

One fdu-native projection requested under a coherent read boundary.

Variants§

§

Lookup

Look up one relative path with three-valued, portable-safe absence.

Fields

§path: PathBuf

Native path relative to the opened root.

§

RollUp

Return both maintained aggregate partitions for one directory.

Fields

§path: PathBuf

Directory relative to the opened root.

§

Tree

Return one page of portable descendants, level by level to depth.

Fields

§path: PathBuf

Directory relative to the opened root.

§depth: Bound

How many levels below path the page descends.

Limit(1) is this directory’s own children. Rows arrive in breadth-first level order, so a page cut short by page withholds depth rather than breadth: the caller can always tell how wide each level it received was.

§include_ignored: bool

Whether entries in the fixed ignored partition are traversed.

false prunes the excluded directory’s whole subtree, contributing neither it nor any descendant, rather than filtering its row and descending anyway.

§page: PageRequest

Page output and work bounds.

§

Flat

Return one portable-path-ordered page under an fdu-native selection.

Fields

§selection: EntrySelection

Additive portable-entry selection composing the existing query predicates.

§shape: RowShape

Compact or full retained row shape.

§page: PageRequest

Page output and work bounds.

§

Aggregate

Count portable entries under one selection, exactly or to an explicit cap.

Fields

§selection: EntrySelection

Additive portable-entry selection composing the existing query predicates.

§count_cap: u64

Maximum matches counted before returning a lower bound.

§max_work: u64

Maximum portable index rows inspected.

§

Report(ReportRequest)

Evaluate the existing pure fdu query/report machinery at this read boundary.

§

Continue

Resume a tree or flat page from handle-local retained traversal state.

Fields

§continuation: ContinuationId

Opaque continuation returned by a prior page.

§page: PageRequest

Bounds for this page; query identity remains in the handle.

§

Diagnostics

Return fixed-size owner, scope, and retained-issue diagnostics.

Trait Implementations§

Source§

impl Clone for ReadProjection

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ReadProjection

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.