Documentation ¶
Index ¶
- func NewQuerier(keeper Keeper) sdk.Querier
- func RegisterInvariants(ir sdk.InvariantRegistry, k Keeper)
- type Keeper
- func (k Keeper) BalanceInvariant() sdk.Invariant
- func (k *Keeper) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock)
- func (k Keeper) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate
- func (k *Keeper) ForEachStorage(ctx sdk.Context, addr ethcmn.Address, cb func(key, value ethcmn.Hash) bool) error
- func (k Keeper) GenerateCSDBParams() types.CommitStateDBParams
- func (k Keeper) GetAccountStorage(ctx sdk.Context, address common.Address) (types.Storage, error)
- func (k *Keeper) GetBalance(ctx sdk.Context, addr ethcmn.Address) *big.Int
- func (k Keeper) GetBlockBloom(ctx sdk.Context, height int64) ethtypes.Bloom
- func (k Keeper) GetBlockHash(ctx sdk.Context, hash []byte) (int64, bool)
- func (k Keeper) GetChainConfig(ctx sdk.Context) (types.ChainConfig, bool)
- func (k *Keeper) GetCode(ctx sdk.Context, addr ethcmn.Address) []byte
- func (k Keeper) GetHeightHash(ctx sdk.Context, height uint64) common.Hash
- func (k *Keeper) GetOrNewStateObject(ctx sdk.Context, addr ethcmn.Address) types.StateObject
- func (k Keeper) GetParams(ctx sdk.Context) (params types.Params)
- func (k *Keeper) GetState(ctx sdk.Context, addr ethcmn.Address, hash ethcmn.Hash) ethcmn.Hash
- func (k Keeper) Logger(ctx sdk.Context) log.Logger
- func (k Keeper) NonceInvariant() sdk.Invariant
- func (k *Keeper) SetBalance(ctx sdk.Context, addr ethcmn.Address, amount *big.Int)
- func (k Keeper) SetBlockBloom(ctx sdk.Context, height int64, bloom ethtypes.Bloom)
- func (k Keeper) SetBlockHash(ctx sdk.Context, hash []byte, height int64)
- func (k Keeper) SetChainConfig(ctx sdk.Context, config types.ChainConfig)
- func (k Keeper) SetCodeDirectly(ctx sdk.Context, hash, code []byte)
- func (k Keeper) SetHeightHash(ctx sdk.Context, height uint64, hash common.Hash)
- func (k *Keeper) SetNonce(ctx sdk.Context, addr ethcmn.Address, nonce uint64)
- func (k Keeper) SetParams(ctx sdk.Context, params types.Params)
- func (k Keeper) SetStateDirectly(ctx sdk.Context, addr ethcmn.Address, key, value ethcmn.Hash)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewQuerier ¶
NewQuerier is the module level router for state queries
func RegisterInvariants ¶
func RegisterInvariants(ir sdk.InvariantRegistry, k Keeper)
RegisterInvariants registers the evm module invariants
Types ¶
type Keeper ¶
type Keeper struct { // Transaction counter in a block. Used on StateSB's Prepare function. // It is reset to 0 every block on BeginBlock so there's no point in storing the counter // on the KVStore or adding it as a field on the EVM genesis state. TxCount int Bloom *big.Int Bhash ethcmn.Hash LogSize uint // contains filtered or unexported fields }
Keeper wraps the CommitStateDB, allowing us to pass in SDK context while adhering to the StateDB interface.
func NewKeeper ¶
func NewKeeper( cdc *codec.Codec, storeKey sdk.StoreKey, paramSpace params.Subspace, ak types.AccountKeeper, sk types.SupplyKeeper, bk bank.Keeper, ) *Keeper
NewKeeper generates new evm module keeper
func (Keeper) BalanceInvariant ¶
BalanceInvariant checks that all auth module's EthAccounts in the application have the same balance as the EVM one.
func (*Keeper) BeginBlock ¶
func (k *Keeper) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock)
BeginBlock sets the block hash -> block height map for the previous block height and resets the Bloom filter and the transaction count to 0.
func (Keeper) EndBlock ¶
func (k Keeper) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate
EndBlock updates the accounts and commits state objects to the KV Store, while deleting the empty ones. It also sets the bloom filers for the request block to the store. The EVM end block logic doesn't update the validator set, thus it returns an empty slice.
func (*Keeper) ForEachStorage ¶
func (k *Keeper) ForEachStorage(ctx sdk.Context, addr ethcmn.Address, cb func(key, value ethcmn.Hash) bool) error
ForEachStorage calls CommitStateDB.ForEachStorage using passed in context
func (Keeper) GenerateCSDBParams ¶
func (k Keeper) GenerateCSDBParams() types.CommitStateDBParams
Logger returns a module-specific logger.
func (Keeper) GetAccountStorage ¶
GetAccountStorage return state storage associated with an account
func (*Keeper) GetBalance ¶
GetBalance calls CommitStateDB.GetBalance using the passed in context
func (Keeper) GetBlockBloom ¶
GetBlockBloom gets bloombits from block height
func (Keeper) GetBlockHash ¶
GetBlockHash gets block height from block consensus hash
func (Keeper) GetChainConfig ¶
GetChainConfig gets block height from block consensus hash
func (Keeper) GetHeightHash ¶
GetHeightHash returns the block header hash associated with a given block height and chain epoch number.
func (*Keeper) GetOrNewStateObject ¶
GetOrNewStateObject calls CommitStateDB.GetOrNetStateObject using the passed in context
func (Keeper) NonceInvariant ¶
NonceInvariant checks that all auth module's EthAccounts in the application have the same nonce sequence as the EVM.
func (*Keeper) SetBalance ¶
SetBalance calls CommitStateDB.SetBalance using the passed in context
func (Keeper) SetBlockBloom ¶
SetBlockBloom sets the mapping from block height to bloom bits
func (Keeper) SetBlockHash ¶
SetBlockHash sets the mapping from block consensus hash to block height
func (Keeper) SetChainConfig ¶
func (k Keeper) SetChainConfig(ctx sdk.Context, config types.ChainConfig)
SetChainConfig sets the mapping from block consensus hash to block height
func (Keeper) SetCodeDirectly ¶
SetCodeDirectly commit code into db with no cache
func (Keeper) SetHeightHash ¶
SetHeightHash sets the block header hash associated with a given height.