Skip to main content

LedgerEntry

Struct LedgerEntry 

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

Generic ledger entry for append-only platform ledgers.

Ledger keys identify the logical ledger (e.g. "audit", "decision", "relationship", "incident", "reality"). The payload is opaque bytes whose schema is defined by the consumer (Caelum, Digicorp).

Implementations§

Source§

impl LedgerEntry

Source

pub fn new( entry_id: LedgerEntryId, tenant_id: TenantId, ledger_key: impl Into<String>, payload: Vec<u8>, timestamp: u64, ) -> Self

Creates a new ledger entry.

actor_id can be set via with_actor after construction.

§Panics

Panics if ledger_key is empty.

Source

pub fn with_actor(self, actor_id: ActorId) -> Self

Attaches an actor identifier, returning the modified entry.

Source

pub fn entry_id(&self) -> LedgerEntryId

Returns the entry identifier.

Source

pub fn tenant_id(&self) -> TenantId

Returns the tenant identifier.

Source

pub fn ledger_key(&self) -> &str

Returns the logical ledger key.

Source

pub fn actor_id(&self) -> Option<ActorId>

Returns the actor identifier, if any.

Source

pub fn payload(&self) -> &[u8]

Returns the opaque payload bytes.

Source

pub fn timestamp(&self) -> u64

Returns the entry timestamp (Unix epoch seconds).

Trait Implementations§

Source§

impl Clone for LedgerEntry

Source§

fn clone(&self) -> LedgerEntry

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for LedgerEntry

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for LedgerEntry

Source§

fn eq(&self, other: &LedgerEntry) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for LedgerEntry

Source§

impl StructuralPartialEq for LedgerEntry

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.