# Functions
New returns a new Ledger from the given options.
NewConsumer return a new Consumer reference from the named Output to the named Transaction.
NewEpochDiff returns a new EpochDiff object.
NewMockedInput creates a new MockedInput from an utxo.OutputID.
NewMockedOutput creates a new MockedOutput based on the utxo.TransactionID and its index within the MockedTransaction.
NewMockedTransaction creates a new MockedTransaction with the given inputs and specified outputCount.
NewMockedVM creates a new MockedVM.
NewOutputMetadata returns new OutputMetadata for the given OutputID.
NewOutputsMetadata returns a new OutputMetadata collection with the given elements.
NewOutputWithMetadata returns a new OutputWithMetadata object.
NewSnapshot creates a new Snapshot from the given details.
NewTestFramework creates a new instance of the TestFramework with one default output "Genesis" which has to be consumed by the first transaction.
NewTransactionMetadata returns new TransactionMetadata for the given TransactionID.
WithCacheTimeProvider is an Option for the Ledger that allows to configure which CacheTimeProvider is supposed to be used.
WithConflictDAGOptions is an Option for the Ledger that allows to configure the options for the ConflictDAG.
WithConsumerCacheTime is an Option for the Ledger that allows to configure how long Consumer objects stay cached after they have been released.
WithOutputCacheTime is an Option for the Ledger that allows to configure how long Output objects stay cached after they have been released.
WithOutputMetadataCacheTime is an Option for the Ledger that allows to configure how long OutputMetadata objects stay cached after they have been released.
WithStore is an Option for the Ledger that allows to configure which KVStore is supposed to be used to persist data (the default option is to use a MapDB).
WithTransactionCacheTime is an Option for the Ledger that allows to configure how long Transaction objects stay cached after they have been released.
WithTransactionMetadataCacheTime is an Option for the Ledger that allows to configure how long TransactionMetadata objects stay cached after they have been released.
WithVM is an Option for the Ledger that allows to configure which VM is supposed to be used to process transactions.
# Constants
PrefixConsumerStorage defines the storage prefix for the Consumer object storage.
PrefixOutputMetadataStorage defines the storage prefix for the OutputMetadata object storage.
PrefixOutputStorage defines the storage prefix for the Output object storage.
PrefixTransactionMetadataStorage defines the storage prefix for the TransactionMetadata object storage.
PrefixTransactionStorage defines the storage prefix for the Transaction object storage.
# Variables
ErrTransactionInvalid is returned if a Transaction is found to be invalid.
ErrTransactionUnsolid is returned if a Transaction consumes unsolid Outputs..
# Structs
Consumer represents the reference between an Output and its spending Transaction.
EpochDiff represents the collection of OutputWithMetadata objects that have been included in an epoch.
Events is a container that acts as a dictionary for the existing events of a Ledger.
Ledger is an implementation of a "realities-ledger" that manages Outputs according to the principles of the quadruple-entry accounting.
MockedInput is a mocked entity that allows to "address" which Outputs are supposed to be used by a Transaction.
MockedOutput is the container for the data produced by executing a MockedTransaction.
MockedTransaction is the type that is used to describe instructions how to modify the ledger state for MockedVM.
MockedVM is an implementation of UTXO-based VMs for testing purposes.
OutputMetadata represents a container for additional information about an Output.
OutputsMetadata represents a collection of OutputMetadata objects indexed by their OutputID.
OutputWithMetadata represents an Output with its associated metadata fields that are needed for epoch management.
Snapshot represents a snapshot of the current ledger state.
SnapshotHeader represents the info of a snapshot.
Storage is a Ledger component that bundles the storage related API.
TestFramework provides common testing functionality for the ledger package.
TransactionAcceptedEvent is a container that acts as a dictionary for the TransactionAccepted event related parameters.
TransactionBookedEvent is a container that acts as a dictionary for the TransactionBooked event related parameters.
TransactionConflictIDUpdatedEvent is a container that acts as a dictionary for the TransactionConflictIDUpdated event related parameters.
TransactionForkedEvent is a container that acts as a dictionary for the TransactionForked event related parameters.
TransactionInclusionUpdatedEvent is a container that acts as a dictionary for the TransactionInclusionUpdated event related parameters.
TransactionInvalidEvent is a container that acts as a dictionary for the TransactionInvalid event related parameters.
TransactionMetadata represents a container for additional information about a Transaction.
TransactionRejectedEvent is a container that acts as a dictionary for the TransactionRejected event related parameters.
TransactionStoredEvent is a container that acts as a dictionary for the TransactionStored event related parameters.
Utils is a Ledger component that bundles utility related API to simplify common interactions with the Ledger.
# Type aliases
Option represents the return type of optional parameters that can be handed into the constructor of the Ledger to configure its behavior.