Class: Whodunit::Chronicles::Ledgers::MemoryLedger

Inherits:
Whodunit::Chronicles::Ledger show all
Defined in:
lib/whodunit/chronicles/ledgers/memory_ledger.rb,
sig/whodunit/chronicles/ledgers/memory_ledger.rbs

Overview

In-memory append-only ledger for tests, examples, and small scripts.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Whodunit::Chronicles::Ledger

#ensure_indexes!, #migrate!, #partition_for, #prepare!, #status, #verify

Constructor Details

#initializeMemoryLedger

Create an empty in-memory ledger.



14
15
16
# File 'lib/whodunit/chronicles/ledgers/memory_ledger.rb', line 14

def initialize
  @entries = []
end

Instance Attribute Details

#entriesArray<LedgerEntry> (readonly)

Returns appended entries in insertion order.

Returns:

  • (Array<LedgerEntry>)

    appended entries in insertion order



11
12
13
# File 'lib/whodunit/chronicles/ledgers/memory_ledger.rb', line 11

def entries
  @entries
end

Instance Method Details

#append(entry) ⇒ LedgerEntry

Append an entry to memory.

Parameters:

Returns:



22
23
24
25
# File 'lib/whodunit/chronicles/ledgers/memory_ledger.rb', line 22

def append(entry)
  @entries << entry
  entry
end