Skip to main content

ObjectStore

Struct ObjectStore 

Source
pub struct ObjectStore { /* private fields */ }
Expand description

Object storage - handles reading/writing objects to disk with optional encryption

Implementations§

Source§

impl ObjectStore

Source

pub fn new(repo_path: &Path) -> Self

Create a new object store

Source

pub fn new_with_encryption( repo_path: &Path, passphrase: Option<&str>, ) -> Result<Self, String>

Create object store with encryption passphrase

Source

pub fn write(&self, object: &Object) -> Result<ObjectHash, String>

Write an object to storage

Source

pub fn read(&self, hash: &ObjectHash) -> Result<Object, String>

Read an object from storage

Source

pub fn exists(&self, hash: &ObjectHash) -> bool

Check if an object exists

Source

pub fn encryption(&self) -> Arc<Mutex<EncryptionManager>>

The encryption manager this store reads and writes through.

gc needs it so that packed objects get exactly the treatment the loose ones had, rather than landing on disk in the clear.

Source

pub fn list(&self) -> Result<Vec<ObjectHash>, String>

List all objects

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.