app

package
v0.0.0-...-c073115 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2020 License: Apache-2.0 Imports: 25 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateCodec

func CreateCodec() *codec.Codec

CreateCodec creates a new amino wire codec and registers all the necessary concrete types and interfaces needed for the application.

func NewAnteHandler

func NewAnteHandler(ak auth.AccountKeeper, fck auth.FeeCollectionKeeper) sdk.AnteHandler

NewAnteHandler returns an ante handler responsible for attempting to route an Ethereum or SDK transaction to an internal ante handler for performing transaction-level processing (e.g. fee payment, signature verification) before being passed onto it's respective handler.

NOTE: The EVM will already consume (intrinsic) gas for signature verification and covering input size as well as handling nonce incrementing.

Types

type EthermintApp

type EthermintApp struct {
	*bam.BaseApp
	// contains filtered or unexported fields
}

EthermintApp implements an extended ABCI application. It is an application that may process transactions through Ethereum's EVM running atop of Tendermint consensus.

func NewEthermintApp

func NewEthermintApp(logger tmlog.Logger, db dbm.DB, baseAppOpts ...func(*bam.BaseApp)) *EthermintApp

NewEthermintApp returns a reference to a new initialized Ethermint application.

TODO: Ethermint needs to support being bootstrapped as an application running in a sovereign zone and as an application running with a shared security model. For now, it will support only running as a sovereign application.

func (*EthermintApp) BeginBlocker

BeginBlocker signals the beginning of a block. It performs application updates on the start of every block.

func (*EthermintApp) EndBlocker

EndBlocker signals the end of a block. It performs application updates on the end of every block.

type GenesisAccount

type GenesisAccount struct {
	Address sdk.AccAddress `json:"address"`
	Coins   sdk.Coins      `json:"coins"`
	Code    []byte         `json:"code,omitempty"`
	Storage types.Storage  `json:"storage,omitempty"`
}

GenesisAccount defines an account to be initialized in the genesis state.

type GenesisState

type GenesisState struct {
	Accounts []GenesisAccount `json:"accounts"`
}

GenesisState defines the application's genesis state. It contains all the information required and accounts to initialize the blockchain.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL