Skip to main content

ReleaseSource

Trait ReleaseSource 

Source
pub trait ReleaseSource {
    // Required methods
    fn manifest(&self) -> Result<ReleaseManifest, RkError>;
    fn blob(&self, digest: &Digest) -> Result<Vec<u8>, RkError>;
}
Expand description

One release bundle, read by the engine.

Required Methods§

Source

fn manifest(&self) -> Result<ReleaseManifest, RkError>

The bundle’s manifest.

§Errors

A source that cannot describe itself — an unreadable directory, an unverifiable fetch — fails here, before any blob is asked for.

Source

fn blob(&self, digest: &Digest) -> Result<Vec<u8>, RkError>

The bytes behind one digest the manifest names.

§Errors

Returns RkError::NotFound for a digest the bundle does not carry, and the source’s own failure for bytes it cannot read.

Trait Implementations§

Source§

impl ReleaseSource for &dyn ReleaseSource

Source§

fn manifest(&self) -> Result<ReleaseManifest, RkError>

The bundle’s manifest. Read more
Source§

fn blob(&self, digest: &Digest) -> Result<Vec<u8>, RkError>

The bytes behind one digest the manifest names. Read more

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§