pub struct Member<'view, 'source, S: RangeSource> { /* private fields */ }Expand description
A selected original occurrence; construction checks its immutable archive.
Implementations§
Source§impl<'v, 's, S: RangeSource> Member<'v, 's, S>
impl<'v, 's, S: RangeSource> Member<'v, 's, S>
Sourcepub async fn content<W: Work>(
&self,
work: &W,
) -> Result<Content<'v, 's, S>, ReadFailure<S::Error, S::Document, S::Generation>>
pub async fn content<W: Work>( &self, work: &W, ) -> Result<Content<'v, 's, S>, ReadFailure<S::Error, S::Document, S::Generation>>
Acquires exactly this original occurrence through complete EOF/CRC.
Signed data objects can instead use source without retention.
Source§impl<S: RangeSource> Member<'_, '_, S>
impl<S: RangeSource> Member<'_, '_, S>
Sourcepub async fn read_media<W: Work>(
&self,
work: &W,
) -> Result<Reading<S::Document, S::Generation>, ReadFailure<S::Error, S::Document, S::Generation>>
pub async fn read_media<W: Work>( &self, work: &W, ) -> Result<Reading<S::Document, S::Generation>, ReadFailure<S::Error, S::Document, S::Generation>>
Streams the original full member through the existing incremental MIME grammar. There is no joined media-type buffer, new parser or replay. A malformed MIME reading still requires complete ZIP integrity.
Source§impl<'v, 's, S: RangeSource> Member<'v, 's, S>
impl<'v, 's, S: RangeSource> Member<'v, 's, S>
Sourcepub async fn with_signed_xml<F: SignatureFactory<'v, 's, S>, V: SignatureVisitor<'v, 's, F, S>, W: Work>(
&self,
factory: &F,
visitor: V,
work: &W,
) -> Result<V::Output, Error<ReadFailure<S::Error, S::Document, S::Generation>, F::Error, V::Error, AccessError<F::Error, F::Id>>>
pub async fn with_signed_xml<F: SignatureFactory<'v, 's, S>, V: SignatureVisitor<'v, 's, F, S>, W: Work>( &self, factory: &F, visitor: V, work: &W, ) -> Result<V::Output, Error<ReadFailure<S::Error, S::Document, S::Generation>, F::Error, V::Error, AccessError<F::Error, F::Id>>>
Complete EOF/CRC acquisition followed by the same owning signature path.
Source§impl<'v, 's, S: RangeSource> Member<'v, 's, S>
impl<'v, 's, S: RangeSource> Member<'v, 's, S>
Sourcepub async fn with_xml<F: Factory, V: Visitor<'v, 's, F, S>, W: Work>(
&self,
factory: &F,
visitor: V,
work: &W,
) -> Result<V::Output, Error<ReadFailure<S::Error, S::Document, S::Generation>, F::Error, V::Error, AccessError<F::Error, F::Id>>>
pub async fn with_xml<F: Factory, V: Visitor<'v, 's, F, S>, W: Work>( &self, factory: &F, visitor: V, work: &W, ) -> Result<V::Output, Error<ReadFailure<S::Error, S::Document, S::Generation>, F::Error, V::Error, AccessError<F::Error, F::Id>>>
Acquires exactly this original member, validates EOF/CRC and moves its funded allocation to the selected XML owner. The association is minted only around that actual owner’s scoped view. Cancellation drops all driver-owned temporary storage; external visitor effects are not rolled back. No successful partial result is returned after a late refusal.
Source§impl<'v, 's, S: RangeSource> Member<'v, 's, S>
impl<'v, 's, S: RangeSource> Member<'v, 's, S>
Sourcepub fn source<W: Work>(&self, work: &W) -> Acquisition<Source<'v, 's, S>, S>
pub fn source<W: Work>(&self, work: &W) -> Acquisition<Source<'v, 's, S>, S>
Checks source, method and unambiguous framing before constructing a payload source. CRC and final extent remain complete-EOF obligations.
Sourcepub async fn read_bytes<W: Work>(
&self,
work: &W,
) -> Result<OwnedVec<u8>, ReadFailure<S::Error, S::Document, S::Generation>>
pub async fn read_bytes<W: Work>( &self, work: &W, ) -> Result<OwnedVec<u8>, ReadFailure<S::Error, S::Document, S::Generation>>
Retains a complete carried CMS/XML member under actual-capacity funding. Large data objects should be streamed; no successful prefix is returned after source, CRC, decoded-length or receiver refusal.
§Panics
An internal framing invariant fails if a preflighted readable member lacks its already checked original payload range.
Source§impl<S: RangeSource> Member<'_, '_, S>
impl<S: RangeSource> Member<'_, '_, S>
Sourcepub fn id(&self) -> MemberId<S::Document, S::Generation>
pub fn id(&self) -> MemberId<S::Document, S::Generation>
Immutable identity of this original occurrence.
Sourcepub fn central_span(&self) -> Span
pub fn central_span(&self) -> Span
Original central-directory enclosure.
Sourcepub fn version_needed(&self) -> u16
pub fn version_needed(&self) -> u16
Original required extraction version.
Sourcepub fn data_span(&self) -> Option<Span>
pub fn data_span(&self) -> Option<Span>
Original compressed payload extent, if it can be bounded unambiguously.
Sourcepub fn local_span(&self) -> Option<Span>
pub fn local_span(&self) -> Option<Span>
Original complete local record, including its actual descriptor.
Sourcepub fn local_extra_span(&self) -> Option<Span>
pub fn local_extra_span(&self) -> Option<Span>
Original local-header extra fields, independently of central extras.
Sourcepub fn decoded_length(&self) -> u64
pub fn decoded_length(&self) -> u64
Declared decoded length. Successful acquisition independently checks it.