pub struct ClosureManifest {
pub root: Hash,
pub mode: ClosureMode,
pub packs: Vec<Hash>,
}Expand description
Convenience index of a closure export: magic "MKCL", version 1,
root id, mode, and the pack_key of each pack in order.
The caller supplies the trusted root to verify_closure_manifest;
the manifest does not authenticate the objects and is not itself a
trust anchor. It only tells a verifier which pack hashes to expect.
Fields§
§root: HashCommit, remix, or tag id the closure is claimed to cover.
mode: ClosureModeSnapshot or history.
packs: Vec<Hash>pack_key of each pack, in export order. At most
MAX_CLOSURE_PACKS entries.
Implementations§
Source§impl ClosureManifest
impl ClosureManifest
Sourcepub fn decode(bytes: &[u8]) -> Result<Self, VerifyError>
pub fn decode(bytes: &[u8]) -> Result<Self, VerifyError>
Decode, rejecting unknown version/mode and trailing bytes.
§Errors
VerifyError::ClosureManifestBadMagic,
VerifyError::ClosureManifestUnsupportedVersion, or
VerifyError::ClosureManifestMalformed.
Trait Implementations§
Source§impl Clone for ClosureManifest
impl Clone for ClosureManifest
Source§impl Debug for ClosureManifest
impl Debug for ClosureManifest
impl Eq for ClosureManifest
Source§impl PartialEq for ClosureManifest
impl PartialEq for ClosureManifest
impl StructuralPartialEq for ClosureManifest
Auto Trait Implementations§
impl Freeze for ClosureManifest
impl RefUnwindSafe for ClosureManifest
impl Send for ClosureManifest
impl Sync for ClosureManifest
impl Unpin for ClosureManifest
impl UnsafeUnpin for ClosureManifest
impl UnwindSafe for ClosureManifest
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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