Skip to main content

PageStrategy

Trait PageStrategy 

Source
pub trait PageStrategy {
    type Request: Copy;
    type Observation<'observation>;
    type Boundary;

    // Required methods
    fn next_request(&self) -> Result<Self::Request, PaginationError>;
    fn observe<'observation>(
        &mut self,
        observation: Self::Observation<'observation>,
    ) -> Result<Self::Boundary, PaginationError>;
}
Expand description

Provider-neutral page strategy driven without transport or allocation.

Required Associated Types§

Source

type Request: Copy

Exact request-position token for the next page.

Source

type Observation<'observation>

Decoded response observation, optionally borrowing provider state.

Source

type Boundary

Validated accepted page boundary.

Required Methods§

Source

fn next_request(&self) -> Result<Self::Request, PaginationError>

Returns the next request token or PaginationError::Complete.

Source

fn observe<'observation>( &mut self, observation: Self::Observation<'observation>, ) -> Result<Self::Boundary, PaginationError>

Transactionally validates and accepts one response.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§