Trait libpijul::changestore::ChangeStore[][src]

pub trait ChangeStore {
    type Error: Error + Debug + Send + Sync + From<Utf8Error> + From<ChangeError> + 'static;
Show 14 methods fn has_contents(&self, hash: Hash, change_id: Option<ChangeId>) -> bool;
fn get_contents<F: Fn(ChangeId) -> Option<Hash>>(
        &self,
        hash: F,
        key: Vertex<ChangeId>,
        buf: &mut Vec<u8>
    ) -> Result<usize, Self::Error>;
fn get_contents_ext(
        &self,
        key: Vertex<Option<Hash>>,
        buf: &mut Vec<u8>
    ) -> Result<usize, Self::Error>;
fn change_deletes_position<F: Fn(ChangeId) -> Option<Hash>>(
        &self,
        hash: F,
        change: ChangeId,
        pos: Position<Option<Hash>>
    ) -> Result<Vec<Hash>, Self::Error>;
fn save_change(&self, p: &Change) -> Result<Hash, Self::Error>;
fn del_change(&self, h: &Hash) -> Result<bool, Self::Error>;
fn get_change(&self, h: &Hash) -> Result<Change, Self::Error>; fn get_header(&self, h: &Hash) -> Result<ChangeHeader, Self::Error> { ... }
fn get_dependencies(&self, hash: &Hash) -> Result<Vec<Hash>, Self::Error> { ... }
fn get_extra_known(&self, hash: &Hash) -> Result<Vec<Hash>, Self::Error> { ... }
fn get_changes(
        &self,
        hash: &Hash
    ) -> Result<Vec<Hunk<Option<Hash>, Local>>, Self::Error> { ... }
fn knows(&self, hash0: &Hash, hash1: &Hash) -> Result<bool, Self::Error> { ... }
fn has_edge(
        &self,
        change: Hash,
        from: Position<Option<Hash>>,
        to: Position<Option<Hash>>,
        flags: EdgeFlags
    ) -> Result<bool, Self::Error> { ... }
fn get_file_meta<'a, F: Fn(ChangeId) -> Option<Hash>>(
        &self,
        hash: F,
        vertex: Vertex<ChangeId>,
        buf: &'a mut Vec<u8>
    ) -> Result<FileMetadata<'a>, Self::Error> { ... }
}
Expand description

A trait for storing changes and reading from them.

Associated Types

Required methods

Provided methods

Implementors