Skip to main content

Ledger

Trait Ledger 

Source
pub trait Ledger {
    // Required methods
    fn create(
        &self,
        ref_prefix: &str,
        strategy: &IdStrategy<'_>,
        fields: &[(&str, &[u8])],
        message: &str,
    ) -> Result<LedgerEntry, Error>;
    fn read(&self, ref_name: &str) -> Result<LedgerEntry, Error>;
    fn update(
        &self,
        ref_name: &str,
        mutations: &[Mutation<'_>],
        message: &str,
    ) -> Result<LedgerEntry, Error>;
    fn list(&self, ref_prefix: &str) -> Result<Vec<String>, Error>;
    fn history(&self, ref_name: &str) -> Result<Vec<Oid>, Error>;
}
Expand description

Core ledger operations.

Required Methods§

Source

fn create( &self, ref_prefix: &str, strategy: &IdStrategy<'_>, fields: &[(&str, &[u8])], message: &str, ) -> Result<LedgerEntry, Error>

Create a new record under ref_prefix.

Source

fn read(&self, ref_name: &str) -> Result<LedgerEntry, Error>

Read an existing record by its full ref name.

Source

fn update( &self, ref_name: &str, mutations: &[Mutation<'_>], message: &str, ) -> Result<LedgerEntry, Error>

Update an existing record by applying mutations.

Source

fn list(&self, ref_prefix: &str) -> Result<Vec<String>, Error>

List all record IDs under a ref prefix.

Source

fn history(&self, ref_name: &str) -> Result<Vec<Oid>, Error>

Return the commit history for a record.

Implementations on Foreign Types§

Source§

impl Ledger for Repository

Source§

fn create( &self, ref_prefix: &str, strategy: &IdStrategy<'_>, fields: &[(&str, &[u8])], message: &str, ) -> Result<LedgerEntry, Error>

Source§

fn read(&self, ref_name: &str) -> Result<LedgerEntry, Error>

Source§

fn update( &self, ref_name: &str, mutations: &[Mutation<'_>], message: &str, ) -> Result<LedgerEntry, Error>

Source§

fn list(&self, ref_prefix: &str) -> Result<Vec<String>, Error>

Source§

fn history(&self, ref_name: &str) -> Result<Vec<Oid>, Error>

Implementors§