Documentation ¶
Index ¶
- Constants
- func DefaultProofRuntime() (prt *merkle.ProofRuntime)
- func First(st KVStore, start, end []byte) (kv cmn.KVPair, ok bool)
- func Last(st KVStore, start, end []byte) (kv cmn.KVPair, ok bool)
- func MultiStoreProofOpDecoder(pop merkle.ProofOp) (merkle.ProofOperator, error)
- func NewCacheKVStore(parent KVStore) *cacheKVStore
- func NewCommitMultiStore(db dbm.DB) *rootMultiStore
- func NewGasKVStore(gasMeter sdk.GasMeter, gasConfig sdk.GasConfig, parent sdk.KVStore) *gasKVStore
- func RequireProof(subpath string) bool
- type CacheKVStore
- type CacheMultiStore
- type CacheWrap
- type CacheWrapper
- type CommitID
- type CommitKVStore
- type CommitMultiStore
- type CommitStore
- type Committer
- type Gas
- type GasConfig
- type GasMeter
- type Iterator
- type KVPair
- type KVStore
- type MultiStore
- type MultiStoreProof
- type MultiStoreProofOp
- type PruningStrategy
- type Queryable
- type Store
- type StoreKey
- type StoreType
- type TraceContext
- type TraceKVStore
- func (tkv *TraceKVStore) CacheWrap() sdk.CacheWrap
- func (tkv *TraceKVStore) CacheWrapWithTrace(_ io.Writer, _ TraceContext) CacheWrap
- func (tkv *TraceKVStore) Delete(key []byte)
- func (tkv *TraceKVStore) Gas(meter GasMeter, config GasConfig) KVStore
- func (tkv *TraceKVStore) Get(key []byte) []byte
- func (tkv *TraceKVStore) GetStoreType() sdk.StoreType
- func (tkv *TraceKVStore) Has(key []byte) bool
- func (tkv *TraceKVStore) Iterator(start, end []byte) sdk.Iterator
- func (tkv *TraceKVStore) Prefix(prefix []byte) KVStore
- func (tkv *TraceKVStore) ReverseIterator(start, end []byte) sdk.Iterator
- func (tkv *TraceKVStore) Set(key []byte, value []byte)
Constants ¶
const ProofOpMultiStore = "multistore"
the multi-store proof operation constant value
Variables ¶
This section is empty.
Functions ¶
func DefaultProofRuntime ¶
func DefaultProofRuntime() (prt *merkle.ProofRuntime)
XXX: This should be managed by the rootMultiStore which may want to register more proof ops?
func MultiStoreProofOpDecoder ¶
func MultiStoreProofOpDecoder(pop merkle.ProofOp) (merkle.ProofOperator, error)
MultiStoreProofOpDecoder returns a multi-store merkle proof operator from a given proof operation.
func NewGasKVStore ¶
NewGasKVStore returns a reference to a new GasKVStore. nolint
func RequireProof ¶
RequireProof returns whether proof is required for the subpath.
Types ¶
type CacheKVStore ¶
type CacheKVStore = types.CacheKVStore
Import cosmos-sdk/types/store.go for convenience. nolint
type CacheMultiStore ¶
type CacheMultiStore = types.CacheMultiStore
Import cosmos-sdk/types/store.go for convenience. nolint
type CacheWrapper ¶
type CacheWrapper = types.CacheWrapper
Import cosmos-sdk/types/store.go for convenience. nolint
type CommitKVStore ¶
type CommitKVStore = types.CommitKVStore
Import cosmos-sdk/types/store.go for convenience. nolint
type CommitMultiStore ¶
type CommitMultiStore = types.CommitMultiStore
Import cosmos-sdk/types/store.go for convenience. nolint
type CommitStore ¶
type CommitStore = types.CommitStore
Import cosmos-sdk/types/store.go for convenience. nolint
func LoadIAVLStore ¶
func LoadIAVLStore(db dbm.DB, id CommitID, pruning sdk.PruningStrategy) (CommitStore, error)
load the iavl store
type MultiStore ¶
type MultiStore = types.MultiStore
Import cosmos-sdk/types/store.go for convenience. nolint
type MultiStoreProof ¶
type MultiStoreProof struct {
StoreInfos []storeInfo
}
MultiStoreProof defines a collection of store proofs in a multi-store
func NewMultiStoreProof ¶
func NewMultiStoreProof(storeInfos []storeInfo) *MultiStoreProof
func (*MultiStoreProof) ComputeRootHash ¶
func (proof *MultiStoreProof) ComputeRootHash() []byte
ComputeRootHash returns the root hash for a given multi-store proof.
type MultiStoreProofOp ¶
type MultiStoreProofOp struct { // To encode in ProofOp.Data. Proof *MultiStoreProof `json:"proof"` // contains filtered or unexported fields }
TODO: document
func NewMultiStoreProofOp ¶
func NewMultiStoreProofOp(key []byte, proof *MultiStoreProof) MultiStoreProofOp
func (MultiStoreProofOp) GetKey ¶
func (op MultiStoreProofOp) GetKey() []byte
GetKey returns the key for a multi-store proof operation.
func (MultiStoreProofOp) ProofOp ¶
func (op MultiStoreProofOp) ProofOp() merkle.ProofOp
ProofOp return a merkle proof operation from a given multi-store proof operation.
func (MultiStoreProofOp) Run ¶
func (op MultiStoreProofOp) Run(args [][]byte) ([][]byte, error)
Run executes a multi-store proof operation for a given value. It returns the root hash if the value matches all the store's commitID's hash or an error otherwise.
func (MultiStoreProofOp) String ¶
func (op MultiStoreProofOp) String() string
String implements the Stringer interface for a mult-store proof operation.
type PruningStrategy ¶
type PruningStrategy = types.PruningStrategy
Import cosmos-sdk/types/store.go for convenience. nolint
type TraceContext ¶
type TraceContext = types.TraceContext
Import cosmos-sdk/types/store.go for convenience. nolint
type TraceKVStore ¶
type TraceKVStore struct {
// contains filtered or unexported fields
}
TraceKVStore implements the KVStore interface with tracing enabled. Operations are traced on each core KVStore call and written to the underlying io.writer.
TODO: Should we use a buffered writer and implement Commit on TraceKVStore?
func NewTraceKVStore ¶
func NewTraceKVStore(parent sdk.KVStore, writer io.Writer, tc TraceContext) *TraceKVStore
NewTraceKVStore returns a reference to a new traceKVStore given a parent KVStore implementation and a buffered writer.
func (*TraceKVStore) CacheWrap ¶
func (tkv *TraceKVStore) CacheWrap() sdk.CacheWrap
CacheWrap implements the KVStore interface. It panics as a TraceKVStore cannot be cache wrapped.
func (*TraceKVStore) CacheWrapWithTrace ¶
func (tkv *TraceKVStore) CacheWrapWithTrace(_ io.Writer, _ TraceContext) CacheWrap
CacheWrapWithTrace implements the KVStore interface. It panics as a TraceKVStore cannot be cache wrapped.
func (*TraceKVStore) Delete ¶
func (tkv *TraceKVStore) Delete(key []byte)
Delete implements the KVStore interface. It traces a write operation and delegates the Delete call to the parent KVStore.
func (*TraceKVStore) Gas ¶
func (tkv *TraceKVStore) Gas(meter GasMeter, config GasConfig) KVStore
Gas implements the KVStore interface.
func (*TraceKVStore) Get ¶
func (tkv *TraceKVStore) Get(key []byte) []byte
Get implements the KVStore interface. It traces a read operation and delegates a Get call to the parent KVStore.
func (*TraceKVStore) GetStoreType ¶
func (tkv *TraceKVStore) GetStoreType() sdk.StoreType
GetStoreType implements the KVStore interface. It returns the underlying KVStore type.
func (*TraceKVStore) Has ¶
func (tkv *TraceKVStore) Has(key []byte) bool
Has implements the KVStore interface. It delegates the Has call to the parent KVStore.
func (*TraceKVStore) Iterator ¶
func (tkv *TraceKVStore) Iterator(start, end []byte) sdk.Iterator
Iterator implements the KVStore interface. It delegates the Iterator call the to the parent KVStore.
func (*TraceKVStore) Prefix ¶
func (tkv *TraceKVStore) Prefix(prefix []byte) KVStore
Prefix implements the KVStore interface.
func (*TraceKVStore) ReverseIterator ¶
func (tkv *TraceKVStore) ReverseIterator(start, end []byte) sdk.Iterator
ReverseIterator implements the KVStore interface. It delegates the ReverseIterator call the to the parent KVStore.
func (*TraceKVStore) Set ¶
func (tkv *TraceKVStore) Set(key []byte, value []byte)
Set implements the KVStore interface. It traces a write operation and delegates the Set call to the parent KVStore.