pub struct OriginRangeRequest {
pub fetch_start: u64,
pub fetch_end: u64,
}Expand description
The chunk-group-aligned span a Origin::fetch_range_data call must
fetch, passed from the engine to the adapter. This is the
produced-by-engine half of the range pull; the verify-against-root half
lives in crate::range_pull and crate::origin_range.
Fields§
§fetch_start: u64First byte of the chunk-group-aligned data span to fetch (inclusive).
fetch_end: u64One past the last byte of the data span to fetch (exclusive). The
adapter issues an inclusive-end Range/GetObject read of
[fetch_start, fetch_end).
Implementations§
Source§impl OriginRangeRequest
impl OriginRangeRequest
Sourcepub const fn len(&self) -> u64
pub const fn len(&self) -> u64
Number of data bytes to fetch (fetch_end - fetch_start). Saturating so
a mis-constructed request can never underflow; the engine always builds
these from a validated crate::range_pull::AlignedRange, where
fetch_end >= fetch_start holds by construction.
Trait Implementations§
Source§impl Clone for OriginRangeRequest
impl Clone for OriginRangeRequest
impl Copy for OriginRangeRequest
Auto Trait Implementations§
impl Freeze for OriginRangeRequest
impl RefUnwindSafe for OriginRangeRequest
impl Send for OriginRangeRequest
impl Sync for OriginRangeRequest
impl Unpin for OriginRangeRequest
impl UnsafeUnpin for OriginRangeRequest
impl UnwindSafe for OriginRangeRequest
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 moreCreates a shared type from an unshared type.