pub struct HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy> { /* private fields */ }Expand description
Cleanup-owning cursor inseparable from its original prepared request.
Continuations expose execution only; another request cannot be attached.
ⓘ
use cloud_sdk::operation::PreparedRequest;
use cloud_sdk::pagination::HeaderCursorContinuation;
fn rebind(
continuation: HeaderCursorContinuation<'_, '_, '_, '_, '_>,
replacement: PreparedRequest<'_>,
) {
continuation.bind(replacement);
}Implementations§
Source§impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
Sourcepub async fn execute_async<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: AsyncAuthenticatedTransport + BoundTransport,
pub async fn execute_async<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: AsyncAuthenticatedTransport + BoundTransport,
Executes the next executor-neutral async request with retained context.
Source§impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
Sourcepub async fn execute_local_async<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: LocalAsyncAuthenticatedTransport + BoundTransport,
pub async fn execute_local_async<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: LocalAsyncAuthenticatedTransport + BoundTransport,
Executes the next local async request with retained context.
Source§impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
Sourcepub const fn operation_id(&self) -> OperationId
pub const fn operation_id(&self) -> OperationId
Returns the provider operation that produced this continuation.
Sourcepub fn observe_history(
&self,
history: &mut CursorHistory<'_>,
digest: CursorDigest,
) -> Result<(), PaginationError>
pub fn observe_history( &self, history: &mut CursorHistory<'_>, digest: CursorDigest, ) -> Result<(), PaginationError>
Checks and transactionally records the exact cursor in caller history.
Sourcepub fn execute_blocking<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: BlockingAuthenticatedTransport + BoundTransport,
pub fn execute_blocking<'response, 'next, T>(
&self,
transport: &T,
response_storage: &'response mut [u8],
response_header_storage: &'response mut [u8],
decimal_scratch: &mut [u8],
transfer_scratch: &mut [u8],
cursor_destination: &'next mut [u8],
limits: PaginationLimits,
) -> Result<HeaderCursorPage<'response, 'next, 'endpoint, 'session, 'request, 'policy>, HeaderCursorExecutionError<T::Error>>where
T: BlockingAuthenticatedTransport + BoundTransport,
Executes the next blocking request using the retained request context.
Trait Implementations§
Auto Trait Implementations§
impl<'cursor, 'endpoint, 'session, 'request, 'policy> !UnwindSafe for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> Freeze for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> RefUnwindSafe for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> Send for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> Sync for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> Unpin for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
impl<'cursor, 'endpoint, 'session, 'request, 'policy> UnsafeUnpin for HeaderCursorContinuation<'cursor, 'endpoint, 'session, 'request, 'policy>
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