#include "mutable_storage.hpp"


Classes | |
| struct | CommitResult |
Public Types | |
| using | MutableStoragePredicate = std::function< bool(std::shared_ptr< const shared_model::interface::Block >, const LedgerState &)> |
Public Member Functions | |
| virtual bool | apply (std::shared_ptr< const shared_model::interface::Block > block)=0 |
| virtual bool | apply (rxcpp::observable< std::shared_ptr< shared_model::interface::Block >> blocks, MutableStoragePredicate predicate)=0 |
| virtual expected::Result< MutableStorage::CommitResult, std::string > | commit (BlockStorage &block_storage) &&=0 |
| virtual | ~MutableStorage ()=default |
Mutable storage is used apply blocks to the storage. Allows to query the world state view, transactions, and blocks.
| using iroha::ametsuchi::MutableStorage::MutableStoragePredicate = std::function<bool( std::shared_ptr<const shared_model::interface::Block>, const LedgerState &)> |
Predicate type checking block Function parameters:
|
virtualdefault |
|
pure virtual |
Applies block without additional validation function
Implemented in iroha::ametsuchi::MutableStorageImpl.

|
pure virtual |
Applies an observable of blocks to current mutable state using logic specified in function
| blocks | Blocks to be applied |
| predicate | Checks whether block is applicable prior to applying transactions |
Implemented in iroha::ametsuchi::MutableStorageImpl.
|
pure virtual |
Apply the local changes made to this MutableStorage to block_storage and the global WSV.
Implemented in iroha::ametsuchi::MutableStorageImpl.