Skip to content
Clone
e876608
13 lines 579 B Rust
//! blob Operation trait for the blob module (blob access on bare repositories based on gix).
use gix::hash::ObjectId;
use crate::blob::types::{BlobContent, BlobMeta, LfsPointer, RawDownload};
/// blob Operation trait.
pub trait BlobOps {
fn blob_content(&self, id: &ObjectId) -> Result<BlobContent, crate::Error>;
fn blob_metadata(&self, id: &ObjectId) -> Result<BlobMeta, crate::Error>;
fn blob_is_lfs_pointer(&self, data: &[u8]) -> Result<Option<LfsPointer>, crate::Error>;
fn blob_raw_download(&self, id: &ObjectId) -> Result<RawDownload, crate::Error>;
}