Show / Hide Table of Contents

Class TrieStateStore

An IStateStore implementation. It stores states with MerkleTrie.

Inheritance
Object
TrieStateStore
Implements
IStateStore
IDisposable
Namespace: Libplanet.Store
Assembly: Libplanet.dll
Syntax
public class TrieStateStore : object, IStateStore, IDisposable

Constructors

| Improve this Doc View Source

TrieStateStore(IKeyValueStore, Boolean)

Creates a new TrieStateStore.

Declaration
public TrieStateStore(IKeyValueStore stateKeyValueStore, bool secure = false)
Parameters
Type Name Description
IKeyValueStore stateKeyValueStore

The storage to store states. It used by MerkleTrie in internal.

Boolean secure

Whether to use MerkleTrie in secure mode. Libplanet.Store.Trie.MerkleTrie.#ctor(Libplanet.Store.Trie.IKeyValueStore,Libplanet.Store.Trie.Nodes.INode,System.Boolean).

Properties

| Improve this Doc View Source

Secure

true if the MerkleTrie is in secure mode. In secure mode, keys are hashed under the hood.

Declaration
public bool Secure { get; }
Property Value
Type Description
Boolean

Methods

| Improve this Doc View Source

CopyStates(IImmutableSet<HashDigest<SHA256>>, TrieStateStore)

Copies states under state root hashes of given stateRootHashes to targetStateStore.

Declaration
public void CopyStates(IImmutableSet<HashDigest<SHA256>> stateRootHashes, TrieStateStore targetStateStore)
Parameters
Type Name Description
IImmutableSet<HashDigest<SHA256>> stateRootHashes

The state root hashes of states to copy.

TrieStateStore targetStateStore

The target state store to copy state root hashes.

| Improve this Doc View Source

Dispose()

Declaration
public void Dispose()
| Improve this Doc View Source

GetStateRoot(Nullable<HashDigest<SHA256>>)

Gets the state root trie of the stateRootHash from the state store.

Declaration
public ITrie GetStateRoot(HashDigest<SHA256>? stateRootHash)
Parameters
Type Name Description
Nullable<HashDigest<SHA256>> stateRootHash

The state root hash of the state root trie to get. If null is passed the empty state root trie is returned.

Returns
Type Description
ITrie

The state root trie of the stateRootHash. If null is passed the empty state root trie is returned.

| Improve this Doc View Source

PruneStates(IImmutableSet<HashDigest<SHA256>>)

Prunes the states no more used from the state store.

Declaration
public void PruneStates(IImmutableSet<HashDigest<SHA256>> survivingStateRootHashes)
Parameters
Type Name Description
IImmutableSet<HashDigest<SHA256>> survivingStateRootHashes

The state root hashes not to prune. These state root hashes are guaranteed to survive after pruning.

Implements

IStateStore
IDisposable
  • Improve this Doc
  • View Source
In This Article
Back to top Copyright © 2018–2022 Planetarium