#[non_exhaustive]pub enum ProjectionPart {
Show 23 variants
Meta,
Leaves,
Nodes,
Accounts,
AccountVersions,
CurrencyVersions,
PolicyVersions,
Periods,
Entries,
Memos,
Postings,
PostingDims,
Holds,
Seals,
SealLeaves,
SealNodes,
Clearings,
ClearingResets,
ClearingRefs,
Balances,
Cleared,
Outstanding,
Slices,
}Expand description
One part of a store’s projection: one table of the doubleentry/1
schema.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Meta
meta: the schema id, ledger id, scale and genesis leaf hash.
Leaves
leaves: the log. The audit replays these rows.
Nodes
nodes: every stored tree node.
Accounts
accounts: registrations by handle.
AccountVersions
account_versions: every version of every account field.
CurrencyVersions
currency_versions: every currency declaration.
PolicyVersions
policy_versions: every policy record.
Periods
periods: the calendar.
Entries
entries: the entry index (key, id, ordinal, reversal link).
Memos
memos, with each entry’s draft fingerprint: the erasable side data,
one row per entry (and per memo row without an entry).
Postings
postings: every posting with its balance after.
PostingDims
posting_dims: the dimension index of postings.
Holds
holds: the hold index, open and resolved.
Seals
seals: the sealed periods.
SealLeaves
seal_leaves: the non-zero leaves of every seal balance tree.
SealNodes
seal_nodes: the stored nodes of every seal balance tree.
Clearings
clearings: clearing records by key.
ClearingResets
clearing_resets: which apply each reset released.
ClearingRefs
clearing_refs: the balances each clearing record touches.
Balances
balances: the maintained balances.
Cleared
cleared: the amounts cleared against postings.
Outstanding
outstanding: the amounts open holds reserve.
Slices
slices: the Settled balance of each (account, currency, dimension
set).
Implementations§
Source§impl ProjectionPart
impl ProjectionPart
Sourcepub fn columns(self) -> Vec<String>
pub fn columns(self) -> Vec<String>
The projected columns, table.column, the primary key first.
Sourcepub const fn key_len(self) -> usize
pub const fn key_len(self) -> usize
How many leading columns form the primary key (the row order).
Sourcepub const fn is_erasable(self) -> bool
pub const fn is_erasable(self) -> bool
Whether the part changes without the log growing: memo erasure changes the memos part (and only it).
Trait Implementations§
Source§impl Clone for ProjectionPart
impl Clone for ProjectionPart
impl Copy for ProjectionPart
Source§impl Debug for ProjectionPart
impl Debug for ProjectionPart
Source§impl Display for ProjectionPart
impl Display for ProjectionPart
impl Eq for ProjectionPart
Source§impl Hash for ProjectionPart
impl Hash for ProjectionPart
Source§impl Ord for ProjectionPart
impl Ord for ProjectionPart
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for ProjectionPart
impl PartialEq for ProjectionPart
Source§impl PartialOrd for ProjectionPart
impl PartialOrd for ProjectionPart
impl StructuralPartialEq for ProjectionPart
Auto Trait Implementations§
impl Freeze for ProjectionPart
impl RefUnwindSafe for ProjectionPart
impl Send for ProjectionPart
impl Sync for ProjectionPart
impl Unpin for ProjectionPart
impl UnsafeUnpin for ProjectionPart
impl UnwindSafe for ProjectionPart
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more