pub struct RuntimeReadContext {
pub head: HeadState,
pub head_etag: String,
pub basis: MetadataBasis,
pub table_cache: Arc<MetadataTableCache>,
pub tail_cache: Arc<WalTailProjectionCache>,
}Expand description
The pinned inputs the runtime resolves once per read: the head anchored to its manifest, the shared caches, and (when the runtime has it) the namespace’s immutable catalog pair.
This is the runtime seam: the loonfs crate pins one context per
request and fans every read of that request through it, so the whole
request observes a single snapshot and shares the caches. It is a
sanctioned public hook (STYLE, “Harness hooks are sanctioned”), not an
application API — embedded applications use the loonfs handles, which
drive this seam internally.
Fields§
§head: HeadState§head_etag: String§basis: MetadataBasisThe materialized basis the head authorized when the anchor was taken. It carries the namespace’s own root when it has one, and the genesis or fork basis until then.
table_cache: Arc<MetadataTableCache>§tail_cache: Arc<WalTailProjectionCache>Trait Implementations§
Source§impl Clone for RuntimeReadContext
impl Clone for RuntimeReadContext
Source§fn clone(&self) -> RuntimeReadContext
fn clone(&self) -> RuntimeReadContext
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 moreAuto Trait Implementations§
impl Freeze for RuntimeReadContext
impl RefUnwindSafe for RuntimeReadContext
impl Send for RuntimeReadContext
impl Sync for RuntimeReadContext
impl Unpin for RuntimeReadContext
impl UnsafeUnpin for RuntimeReadContext
impl UnwindSafe for RuntimeReadContext
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> 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>
Converts
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>
Converts
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 more