pub trait OwnedBinaryXml: BinaryXml {
// Required methods
fn decode_owned<W: Work>(
&self,
snapshot: Snapshot<Self::Document, Self::Generation>,
node: Self::Id,
execution: &W,
) -> Result<OwnedVec<u8>, Self::Error>;
fn decode_binary_owned(
&self,
snapshot: Snapshot<Self::Document, Self::Generation>,
node: Self::Id,
operation: &Reader<'_>,
) -> Result<OwnedDecoded, Self::Error>;
}Expand description
Independent decoded ownership for simultaneous certificate/status checking.
The same owner lexical/decode kernel serves scoped and owned entry points. Decode directly into admitted caller storage, then move its ownership; do not decode into an ordinary Vec and copy it a second time. Every allocation, initialization, lexical pass and decode is admitted before execution. A moved existing buffer retains its original storage account; new processing work is charged to the current operation. Returning owned data does not qualify an implementation’s transitive accounting without testing its actual kernel.
Required Methods§
Sourcefn decode_owned<W: Work>(
&self,
snapshot: Snapshot<Self::Document, Self::Generation>,
node: Self::Id,
execution: &W,
) -> Result<OwnedVec<u8>, Self::Error>
fn decode_owned<W: Work>( &self, snapshot: Snapshot<Self::Document, Self::Generation>, node: Self::Id, execution: &W, ) -> Result<OwnedVec<u8>, Self::Error>
Returns the original decoded octets with independent retained capacity.
Sourcefn decode_binary_owned(
&self,
snapshot: Snapshot<Self::Document, Self::Generation>,
node: Self::Id,
operation: &Reader<'_>,
) -> Result<OwnedDecoded, Self::Error>
fn decode_binary_owned( &self, snapshot: Snapshot<Self::Document, Self::Generation>, node: Self::Id, operation: &Reader<'_>, ) -> Result<OwnedDecoded, Self::Error>
Moves an ASN.1 source together with its producing session. A cached source keeps its existing cumulative ceilings; the adapter must not replace that session merely to start a new query with a clean budget. The current operation funds decoding and subsequent query execution.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".