pub struct SpooledNarSource { /* private fields */ }Expand description
A NarSource over a spool file, deleted when the source is dropped.
This is what turns a one-shot upload — an HTTP request body, which can be read exactly once — into something a fan-out writer can open per tier. Peak is one chunk in each direction.
Trait Implementations§
Source§impl Debug for SpooledNarSource
impl Debug for SpooledNarSource
Source§impl NarSource for SpooledNarSource
impl NarSource for SpooledNarSource
Source§fn size_hint(&self) -> Option<u64>
fn size_hint(&self) -> Option<u64>
Total byte length if it is known before reading. Backends use it to size
a multipart upload or to reject an over-cap value before reading a
single byte;
None is always legal and must never be load-bearing.Source§fn open<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<Bytes, StoreError>> + Send>>, StoreError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SpooledNarSource: 'async_trait,
fn open<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<Bytes, StoreError>> + Send>>, StoreError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SpooledNarSource: 'async_trait,
Open a fresh chunk stream over the same bytes. Read more
Auto Trait Implementations§
impl Freeze for SpooledNarSource
impl RefUnwindSafe for SpooledNarSource
impl Send for SpooledNarSource
impl Sync for SpooledNarSource
impl Unpin for SpooledNarSource
impl UnsafeUnpin for SpooledNarSource
impl UnwindSafe for SpooledNarSource
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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