Documentation ¶
Index ¶
Constants ¶
View Source
const ( EVMDenomPrefix = "evm/" MintMethodName = "mint" BurnMethodName = "burn" BalanceOfMethodName = "balanceOf" TransferMethodName = "transfer" )
Variables ¶
This section is empty.
Functions ¶
func NewBankContract ¶
func NewBankContract(bankKeeper types.BankKeeper, cdc codec.Codec, kvGasConfig storetypes.GasConfig) vm.PrecompiledContract
NewBankContract creates the precompiled contract to manage native tokens
Types ¶
type BankContract ¶
type BankContract struct {
// contains filtered or unexported fields
}
func (*BankContract) Address ¶
func (bc *BankContract) Address() common.Address
func (*BankContract) RequiredGas ¶
func (bc *BankContract) RequiredGas(input []byte) uint64
RequiredGas calculates the contract gas use
type BaseContract ¶
type BaseContract interface { Registrable }
func NewBaseContract ¶
func NewBaseContract(address common.Address) BaseContract
type ExtStateDB ¶
type ExtStateDB interface { vm.StateDB ExecuteNativeAction(contract common.Address, converter statedb.EventConverter, action func(ctx sdk.Context) error) error CacheContext() sdk.Context }
ExtStateDB defines extra methods of statedb to support stateful precompiled contracts
type NativeMessage ¶
type NativeMessage interface { codec.ProtoMarshaler GetSigners() []sdk.AccAddress }
type Registrable ¶
Click to show internal directories.
Click to hide internal directories.