Documentation ¶
Overview ¶
Package eth implements the Ethereum protocol.
Index ¶
- Constants
- type BadBlockArgs
- type Config
- type EthAPIBackend
- func (b *EthAPIBackend) AccountManager() *accounts.Manager
- func (b *EthAPIBackend) BlockByHash(ctx context.Context, hash common.Hash) (*types.Block, error)
- func (b *EthAPIBackend) BlockByNumber(ctx context.Context, number rpc.BlockNumber) (*types.Block, error)
- func (b *EthAPIBackend) BlockByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*types.Block, error)
- func (b *EthAPIBackend) BloomStatus() (uint64, uint64)
- func (b *EthAPIBackend) CacheConfig() *core.CacheConfig
- func (b *EthAPIBackend) ChainConfig() *params.ChainConfig
- func (b *EthAPIBackend) ChainDb() ethdb.Database
- func (b *EthAPIBackend) CurrentBlock() *types.Block
- func (b *EthAPIBackend) CurrentHeader() *types.Header
- func (b *EthAPIBackend) Engine() consensus.Engine
- func (b *EthAPIBackend) EventMux() *event.TypeMux
- func (b *EthAPIBackend) ExtRPCEnabled() bool
- func (b *EthAPIBackend) FeeHistory(ctx context.Context, blockCount int, lastBlock rpc.BlockNumber, ...) (firstBlock *big.Int, reward [][]*big.Int, baseFee []*big.Int, ...)
- func (b *EthAPIBackend) GetEVM(ctx context.Context, msg core.Message, state *state.StateDB, ...) (*vm.EVM, func() error, error)
- func (b *EthAPIBackend) GetLogs(ctx context.Context, hash common.Hash) ([][]*types.Log, error)
- func (b *EthAPIBackend) GetPoolNonce(ctx context.Context, addr common.Address) (uint64, error)
- func (b *EthAPIBackend) GetPoolTransaction(hash common.Hash) *types.Transaction
- func (b *EthAPIBackend) GetPoolTransactions() (types.Transactions, error)
- func (b *EthAPIBackend) GetReceipts(ctx context.Context, hash common.Hash) (types.Receipts, error)
- func (b *EthAPIBackend) GetTd(ctx context.Context, hash common.Hash) *big.Int
- func (b *EthAPIBackend) GetTransaction(ctx context.Context, txHash common.Hash) (*types.Transaction, common.Hash, uint64, uint64, error)
- func (b *EthAPIBackend) HeaderByHash(ctx context.Context, hash common.Hash) (*types.Header, error)
- func (b *EthAPIBackend) HeaderByNumber(ctx context.Context, number rpc.BlockNumber) (*types.Header, error)
- func (b *EthAPIBackend) HeaderByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*types.Header, error)
- func (b *EthAPIBackend) Miner() *miner.Miner
- func (b *EthAPIBackend) PendingBlockAndReceipts() (*types.Block, types.Receipts)
- func (b *EthAPIBackend) RPCEVMTimeout() time.Duration
- func (b *EthAPIBackend) RPCGasCap() uint64
- func (b *EthAPIBackend) RPCTxFeeCap() float64
- func (b *EthAPIBackend) SendTx(ctx context.Context, signedTx *types.Transaction) error
- func (b *EthAPIBackend) ServiceFilter(ctx context.Context, session *bloombits.MatcherSession)
- func (b *EthAPIBackend) SetHead(number uint64)
- func (b *EthAPIBackend) StartMining(threads int) error
- func (b *EthAPIBackend) StateAndHeaderByNumber(ctx context.Context, number rpc.BlockNumber) (*state.StateDB, *types.Header, error)
- func (b *EthAPIBackend) StateAndHeaderByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*state.StateDB, *types.Header, error)
- func (b *EthAPIBackend) StateAtBlock(ctx context.Context, block *types.Block, reexec uint64, base *state.StateDB, ...) (*state.StateDB, error)
- func (b *EthAPIBackend) StateAtTransaction(ctx context.Context, block *types.Block, txIndex int, reexec uint64) (core.Message, vm.BlockContext, *state.StateDB, error)
- func (b *EthAPIBackend) Stats() (pending int, queued int)
- func (b *EthAPIBackend) SubscribeChainEvent(ch chan<- core.ChainEvent) event.Subscription
- func (b *EthAPIBackend) SubscribeChainHeadEvent(ch chan<- core.ChainHeadEvent) event.Subscription
- func (b *EthAPIBackend) SubscribeChainSideEvent(ch chan<- core.ChainSideEvent) event.Subscription
- func (b *EthAPIBackend) SubscribeLogsEvent(ch chan<- []*types.Log) event.Subscription
- func (b *EthAPIBackend) SubscribeNewTxsEvent(ch chan<- core.NewTxsEvent) event.Subscription
- func (b *EthAPIBackend) SubscribePendingLogsEvent(ch chan<- []*types.Log) event.Subscription
- func (b *EthAPIBackend) SubscribeRemovedLogsEvent(ch chan<- core.RemovedLogsEvent) event.Subscription
- func (b *EthAPIBackend) SuggestGasTipCap(ctx context.Context) (*big.Int, error)
- func (b *EthAPIBackend) SyncProgress() ethereum.SyncProgress
- func (b *EthAPIBackend) TxPool() *core.TxPool
- func (b *EthAPIBackend) TxPoolContent() (map[common.Address]types.Transactions, map[common.Address]types.Transactions)
- func (b *EthAPIBackend) TxPoolContentFrom(addr common.Address) (types.Transactions, types.Transactions)
- func (b *EthAPIBackend) UnprotectedAllowed() bool
- type Ethereum
- func (s *Ethereum) APIs() []rpc.API
- func (s *Ethereum) AccountManager() *accounts.Manager
- func (s *Ethereum) ArchiveMode() bool
- func (s *Ethereum) BlockChain() *core.BlockChain
- func (s *Ethereum) BloomIndexer() *core.ChainIndexer
- func (s *Ethereum) ChainDb() ethdb.Database
- func (s *Ethereum) Downloader() *downloader.Downloader
- func (s *Ethereum) Engine() consensus.Engine
- func (s *Ethereum) Etherbase() (eb common.Address, err error)
- func (s *Ethereum) EventMux() *event.TypeMux
- func (s *Ethereum) IsListening() bool
- func (s *Ethereum) IsMining() bool
- func (s *Ethereum) Miner() *miner.Miner
- func (s *Ethereum) Protocols() []p2p.Protocol
- func (s *Ethereum) ResetWithGenesisBlock(gb *types.Block)
- func (s *Ethereum) SetEtherbase(etherbase common.Address)
- func (s *Ethereum) Start() error
- func (s *Ethereum) StartMining(threads int) error
- func (s *Ethereum) Stop() error
- func (s *Ethereum) StopMining()
- func (s *Ethereum) SyncService() *sync_service.SyncService
- func (s *Ethereum) Synced() bool
- func (s *Ethereum) TxPool() *core.TxPool
- type PrivateAdminAPI
- type PrivateDebugAPI
- func (api *PrivateDebugAPI) GetAccessibleState(from, to rpc.BlockNumber) (uint64, error)
- func (api *PrivateDebugAPI) GetBadBlocks(ctx context.Context) ([]*BadBlockArgs, error)
- func (api *PrivateDebugAPI) GetModifiedAccountsByHash(startHash common.Hash, endHash *common.Hash) ([]common.Address, error)
- func (api *PrivateDebugAPI) GetModifiedAccountsByNumber(startNum uint64, endNum *uint64) ([]common.Address, error)
- func (api *PrivateDebugAPI) Preimage(ctx context.Context, hash common.Hash) (hexutil.Bytes, error)
- func (api *PrivateDebugAPI) StorageRangeAt(blockHash common.Hash, txIndex int, contractAddress common.Address, ...) (StorageRangeResult, error)
- type PrivateMinerAPI
- func (api *PrivateMinerAPI) SetEtherbase(etherbase common.Address) bool
- func (api *PrivateMinerAPI) SetExtra(extra string) (bool, error)
- func (api *PrivateMinerAPI) SetGasLimit(gasLimit hexutil.Uint64) bool
- func (api *PrivateMinerAPI) SetGasPrice(gasPrice hexutil.Big) bool
- func (api *PrivateMinerAPI) SetRecommitInterval(interval int)
- func (api *PrivateMinerAPI) Start(threads *int) error
- func (api *PrivateMinerAPI) Stop()
- type PublicDebugAPI
- type PublicEthereumAPI
- type PublicMinerAPI
- type RPCTransaction
- type ScrollAPI
- func (api *ScrollAPI) GetBlockByHash(ctx context.Context, hash common.Hash, fullTx bool) (map[string]interface{}, error)
- func (api *ScrollAPI) GetBlockByNumber(ctx context.Context, number rpc.BlockNumber, fullTx bool) (map[string]interface{}, error)
- func (api *ScrollAPI) GetFirstQueueIndexNotInL2Block(ctx context.Context, hash common.Hash) (queueIndex *uint64, err error)
- func (api *ScrollAPI) GetL1MessageByIndex(ctx context.Context, queueIndex uint64) (height *l1MessageTxRPC, err error)
- func (api *ScrollAPI) GetL1SyncHeight(ctx context.Context) (height *uint64, err error)
- func (api *ScrollAPI) GetLatestRelayedQueueIndex(ctx context.Context) (queueIndex *uint64, err error)
- func (api *ScrollAPI) GetNumSkippedTransactions(ctx context.Context) (uint64, error)
- func (api *ScrollAPI) GetSkippedTransaction(ctx context.Context, hash common.Hash) (*RPCTransaction, error)
- func (api *ScrollAPI) GetSkippedTransactionHashes(ctx context.Context, from uint64, to uint64) ([]common.Hash, error)
- type StorageRangeResult
Constants ¶
const AccountRangeMaxResults = 256
AccountRangeMaxResults is the maximum number of results to be returned per call
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BadBlockArgs ¶
type BadBlockArgs struct { Hash common.Hash `json:"hash"` Block map[string]interface{} `json:"block"` RLP string `json:"rlp"` }
BadBlockArgs represents the entries in the list returned when bad blocks are queried.
type Config ¶
Config contains the configuration options of the ETH protocol. Deprecated: use ethconfig.Config instead.
type EthAPIBackend ¶
type EthAPIBackend struct {
// contains filtered or unexported fields
}
EthAPIBackend implements ethapi.Backend for full nodes
func (*EthAPIBackend) AccountManager ¶
func (b *EthAPIBackend) AccountManager() *accounts.Manager
func (*EthAPIBackend) BlockByHash ¶
func (*EthAPIBackend) BlockByNumber ¶
func (b *EthAPIBackend) BlockByNumber(ctx context.Context, number rpc.BlockNumber) (*types.Block, error)
func (*EthAPIBackend) BlockByNumberOrHash ¶
func (b *EthAPIBackend) BlockByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*types.Block, error)
func (*EthAPIBackend) BloomStatus ¶
func (b *EthAPIBackend) BloomStatus() (uint64, uint64)
func (*EthAPIBackend) CacheConfig ¶
func (b *EthAPIBackend) CacheConfig() *core.CacheConfig
func (*EthAPIBackend) ChainConfig ¶
func (b *EthAPIBackend) ChainConfig() *params.ChainConfig
ChainConfig returns the active chain configuration.
func (*EthAPIBackend) ChainDb ¶
func (b *EthAPIBackend) ChainDb() ethdb.Database
func (*EthAPIBackend) CurrentBlock ¶
func (b *EthAPIBackend) CurrentBlock() *types.Block
func (*EthAPIBackend) CurrentHeader ¶
func (b *EthAPIBackend) CurrentHeader() *types.Header
func (*EthAPIBackend) Engine ¶
func (b *EthAPIBackend) Engine() consensus.Engine
func (*EthAPIBackend) EventMux ¶
func (b *EthAPIBackend) EventMux() *event.TypeMux
func (*EthAPIBackend) ExtRPCEnabled ¶
func (b *EthAPIBackend) ExtRPCEnabled() bool
func (*EthAPIBackend) FeeHistory ¶
func (*EthAPIBackend) GetPoolNonce ¶
func (*EthAPIBackend) GetPoolTransaction ¶
func (b *EthAPIBackend) GetPoolTransaction(hash common.Hash) *types.Transaction
func (*EthAPIBackend) GetPoolTransactions ¶
func (b *EthAPIBackend) GetPoolTransactions() (types.Transactions, error)
func (*EthAPIBackend) GetReceipts ¶
func (*EthAPIBackend) GetTransaction ¶
func (*EthAPIBackend) HeaderByHash ¶
func (*EthAPIBackend) HeaderByNumber ¶
func (b *EthAPIBackend) HeaderByNumber(ctx context.Context, number rpc.BlockNumber) (*types.Header, error)
func (*EthAPIBackend) HeaderByNumberOrHash ¶
func (b *EthAPIBackend) HeaderByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*types.Header, error)
func (*EthAPIBackend) Miner ¶
func (b *EthAPIBackend) Miner() *miner.Miner
func (*EthAPIBackend) PendingBlockAndReceipts ¶
func (b *EthAPIBackend) PendingBlockAndReceipts() (*types.Block, types.Receipts)
func (*EthAPIBackend) RPCEVMTimeout ¶
func (b *EthAPIBackend) RPCEVMTimeout() time.Duration
func (*EthAPIBackend) RPCGasCap ¶
func (b *EthAPIBackend) RPCGasCap() uint64
func (*EthAPIBackend) RPCTxFeeCap ¶
func (b *EthAPIBackend) RPCTxFeeCap() float64
func (*EthAPIBackend) SendTx ¶
func (b *EthAPIBackend) SendTx(ctx context.Context, signedTx *types.Transaction) error
func (*EthAPIBackend) ServiceFilter ¶
func (b *EthAPIBackend) ServiceFilter(ctx context.Context, session *bloombits.MatcherSession)
func (*EthAPIBackend) SetHead ¶
func (b *EthAPIBackend) SetHead(number uint64)
func (*EthAPIBackend) StartMining ¶
func (b *EthAPIBackend) StartMining(threads int) error
func (*EthAPIBackend) StateAndHeaderByNumber ¶
func (b *EthAPIBackend) StateAndHeaderByNumber(ctx context.Context, number rpc.BlockNumber) (*state.StateDB, *types.Header, error)
func (*EthAPIBackend) StateAndHeaderByNumberOrHash ¶
func (b *EthAPIBackend) StateAndHeaderByNumberOrHash(ctx context.Context, blockNrOrHash rpc.BlockNumberOrHash) (*state.StateDB, *types.Header, error)
func (*EthAPIBackend) StateAtBlock ¶
func (*EthAPIBackend) StateAtTransaction ¶
func (*EthAPIBackend) Stats ¶
func (b *EthAPIBackend) Stats() (pending int, queued int)
func (*EthAPIBackend) SubscribeChainEvent ¶
func (b *EthAPIBackend) SubscribeChainEvent(ch chan<- core.ChainEvent) event.Subscription
func (*EthAPIBackend) SubscribeChainHeadEvent ¶
func (b *EthAPIBackend) SubscribeChainHeadEvent(ch chan<- core.ChainHeadEvent) event.Subscription
func (*EthAPIBackend) SubscribeChainSideEvent ¶
func (b *EthAPIBackend) SubscribeChainSideEvent(ch chan<- core.ChainSideEvent) event.Subscription
func (*EthAPIBackend) SubscribeLogsEvent ¶
func (b *EthAPIBackend) SubscribeLogsEvent(ch chan<- []*types.Log) event.Subscription
func (*EthAPIBackend) SubscribeNewTxsEvent ¶
func (b *EthAPIBackend) SubscribeNewTxsEvent(ch chan<- core.NewTxsEvent) event.Subscription
func (*EthAPIBackend) SubscribePendingLogsEvent ¶
func (b *EthAPIBackend) SubscribePendingLogsEvent(ch chan<- []*types.Log) event.Subscription
func (*EthAPIBackend) SubscribeRemovedLogsEvent ¶
func (b *EthAPIBackend) SubscribeRemovedLogsEvent(ch chan<- core.RemovedLogsEvent) event.Subscription
func (*EthAPIBackend) SuggestGasTipCap ¶
func (*EthAPIBackend) SyncProgress ¶
func (b *EthAPIBackend) SyncProgress() ethereum.SyncProgress
func (*EthAPIBackend) TxPool ¶
func (b *EthAPIBackend) TxPool() *core.TxPool
func (*EthAPIBackend) TxPoolContent ¶
func (b *EthAPIBackend) TxPoolContent() (map[common.Address]types.Transactions, map[common.Address]types.Transactions)
func (*EthAPIBackend) TxPoolContentFrom ¶
func (b *EthAPIBackend) TxPoolContentFrom(addr common.Address) (types.Transactions, types.Transactions)
func (*EthAPIBackend) UnprotectedAllowed ¶
func (b *EthAPIBackend) UnprotectedAllowed() bool
type Ethereum ¶
type Ethereum struct { APIBackend *EthAPIBackend // contains filtered or unexported fields }
Ethereum implements the Ethereum full node service.
func New ¶
func New(stack *node.Node, config *ethconfig.Config, l1Client sync_service.EthClient) (*Ethereum, error)
New creates a new Ethereum object (including the initialisation of the common Ethereum object)
func (*Ethereum) APIs ¶
APIs return the collection of RPC services the ethereum package offers. NOTE, some of these services probably need to be moved to somewhere else.
func (*Ethereum) AccountManager ¶
func (*Ethereum) ArchiveMode ¶
func (*Ethereum) BlockChain ¶
func (s *Ethereum) BlockChain() *core.BlockChain
func (*Ethereum) BloomIndexer ¶
func (s *Ethereum) BloomIndexer() *core.ChainIndexer
func (*Ethereum) Downloader ¶
func (s *Ethereum) Downloader() *downloader.Downloader
func (*Ethereum) IsListening ¶
func (*Ethereum) Protocols ¶
Protocols returns all the currently configured network protocols to start.
func (*Ethereum) ResetWithGenesisBlock ¶
func (*Ethereum) SetEtherbase ¶
SetEtherbase sets the mining reward address.
func (*Ethereum) Start ¶
Start implements node.Lifecycle, starting all internal goroutines needed by the Ethereum protocol implementation.
func (*Ethereum) StartMining ¶
StartMining starts the miner with the given number of CPU threads. If mining is already running, this method adjust the number of threads allowed to use and updates the minimum price required by the transaction pool.
func (*Ethereum) Stop ¶
Stop implements node.Lifecycle, terminating all internal goroutines used by the Ethereum protocol.
func (*Ethereum) StopMining ¶
func (s *Ethereum) StopMining()
StopMining terminates the miner, both at the consensus engine level as well as at the block creation level.
func (*Ethereum) SyncService ¶
func (s *Ethereum) SyncService() *sync_service.SyncService
type PrivateAdminAPI ¶
type PrivateAdminAPI struct {
// contains filtered or unexported fields
}
PrivateAdminAPI is the collection of Ethereum full node-related APIs exposed over the private admin endpoint.
func NewPrivateAdminAPI ¶
func NewPrivateAdminAPI(eth *Ethereum) *PrivateAdminAPI
NewPrivateAdminAPI creates a new API definition for the full node private admin methods of the Ethereum service.
func (*PrivateAdminAPI) ExportChain ¶
ExportChain exports the current blockchain into a local file, or a range of blocks if first and last are non-nil
func (*PrivateAdminAPI) ImportChain ¶
func (api *PrivateAdminAPI) ImportChain(file string) (bool, error)
ImportChain imports a blockchain from a local file.
type PrivateDebugAPI ¶
type PrivateDebugAPI struct {
// contains filtered or unexported fields
}
PrivateDebugAPI is the collection of Ethereum full node APIs exposed over the private debugging endpoint.
func NewPrivateDebugAPI ¶
func NewPrivateDebugAPI(eth *Ethereum) *PrivateDebugAPI
NewPrivateDebugAPI creates a new API definition for the full node-related private debug methods of the Ethereum service.
func (*PrivateDebugAPI) GetAccessibleState ¶
func (api *PrivateDebugAPI) GetAccessibleState(from, to rpc.BlockNumber) (uint64, error)
GetAccessibleState returns the first number where the node has accessible state on disk. Note this being the post-state of that block and the pre-state of the next block. The (from, to) parameters are the sequence of blocks to search, which can go either forwards or backwards
func (*PrivateDebugAPI) GetBadBlocks ¶
func (api *PrivateDebugAPI) GetBadBlocks(ctx context.Context) ([]*BadBlockArgs, error)
GetBadBlocks returns a list of the last 'bad blocks' that the client has seen on the network and returns them as a JSON list of block-hashes
func (*PrivateDebugAPI) GetModifiedAccountsByHash ¶
func (api *PrivateDebugAPI) GetModifiedAccountsByHash(startHash common.Hash, endHash *common.Hash) ([]common.Address, error)
GetModifiedAccountsByHash returns all accounts that have changed between the two blocks specified. A change is defined as a difference in nonce, balance, code hash, or storage hash.
With one parameter, returns the list of accounts modified in the specified block.
func (*PrivateDebugAPI) GetModifiedAccountsByNumber ¶
func (api *PrivateDebugAPI) GetModifiedAccountsByNumber(startNum uint64, endNum *uint64) ([]common.Address, error)
GetModifiedAccountsByNumber returns all accounts that have changed between the two blocks specified. A change is defined as a difference in nonce, balance, code hash, or storage hash.
With one parameter, returns the list of accounts modified in the specified block.
func (*PrivateDebugAPI) Preimage ¶
Preimage is a debug API function that returns the preimage for a sha3 hash, if known.
func (*PrivateDebugAPI) StorageRangeAt ¶
func (api *PrivateDebugAPI) StorageRangeAt(blockHash common.Hash, txIndex int, contractAddress common.Address, keyStart hexutil.Bytes, maxResult int) (StorageRangeResult, error)
StorageRangeAt returns the storage at the given block height and transaction index.
type PrivateMinerAPI ¶
type PrivateMinerAPI struct {
// contains filtered or unexported fields
}
PrivateMinerAPI provides private RPC methods to control the miner. These methods can be abused by external users and must be considered insecure for use by untrusted users.
func NewPrivateMinerAPI ¶
func NewPrivateMinerAPI(e *Ethereum) *PrivateMinerAPI
NewPrivateMinerAPI create a new RPC service which controls the miner of this node.
func (*PrivateMinerAPI) SetEtherbase ¶
func (api *PrivateMinerAPI) SetEtherbase(etherbase common.Address) bool
SetEtherbase sets the etherbase of the miner
func (*PrivateMinerAPI) SetExtra ¶
func (api *PrivateMinerAPI) SetExtra(extra string) (bool, error)
SetExtra sets the extra data string that is included when this miner mines a block.
func (*PrivateMinerAPI) SetGasLimit ¶
func (api *PrivateMinerAPI) SetGasLimit(gasLimit hexutil.Uint64) bool
SetGasLimit sets the gaslimit to target towards during mining.
func (*PrivateMinerAPI) SetGasPrice ¶
func (api *PrivateMinerAPI) SetGasPrice(gasPrice hexutil.Big) bool
SetGasPrice sets the minimum accepted gas price for the miner.
func (*PrivateMinerAPI) SetRecommitInterval ¶
func (api *PrivateMinerAPI) SetRecommitInterval(interval int)
SetRecommitInterval updates the interval for miner sealing work recommitting.
func (*PrivateMinerAPI) Start ¶
func (api *PrivateMinerAPI) Start(threads *int) error
Start starts the miner with the given number of threads. If threads is nil, the number of workers started is equal to the number of logical CPUs that are usable by this process. If mining is already running, this method adjust the number of threads allowed to use and updates the minimum price required by the transaction pool.
func (*PrivateMinerAPI) Stop ¶
func (api *PrivateMinerAPI) Stop()
Stop terminates the miner, both at the consensus engine level as well as at the block creation level.
type PublicDebugAPI ¶
type PublicDebugAPI struct {
// contains filtered or unexported fields
}
PublicDebugAPI is the collection of Ethereum full node APIs exposed over the public debugging endpoint.
func NewPublicDebugAPI ¶
func NewPublicDebugAPI(eth *Ethereum) *PublicDebugAPI
NewPublicDebugAPI creates a new API definition for the full node- related public debug methods of the Ethereum service.
func (*PublicDebugAPI) AccountRange ¶
func (api *PublicDebugAPI) AccountRange(blockNrOrHash rpc.BlockNumberOrHash, start []byte, maxResults int, nocode, nostorage, incompletes bool) (state.IteratorDump, error)
AccountRange enumerates all accounts in the given block and start point in paging request
func (*PublicDebugAPI) DumpBlock ¶
func (api *PublicDebugAPI) DumpBlock(blockNr rpc.BlockNumber) (state.Dump, error)
DumpBlock retrieves the entire state of the database at a given block.
type PublicEthereumAPI ¶
type PublicEthereumAPI struct {
// contains filtered or unexported fields
}
PublicEthereumAPI provides an API to access Ethereum full node-related information.
func NewPublicEthereumAPI ¶
func NewPublicEthereumAPI(e *Ethereum) *PublicEthereumAPI
NewPublicEthereumAPI creates a new Ethereum protocol API for full nodes.
func (*PublicEthereumAPI) Coinbase ¶
func (api *PublicEthereumAPI) Coinbase() (common.Address, error)
Coinbase is the address that mining rewards will be send to (alias for Etherbase)
func (*PublicEthereumAPI) Etherbase ¶
func (api *PublicEthereumAPI) Etherbase() (common.Address, error)
Etherbase is the address that mining rewards will be send to
func (*PublicEthereumAPI) Hashrate ¶
func (api *PublicEthereumAPI) Hashrate() hexutil.Uint64
Hashrate returns the POW hashrate
type PublicMinerAPI ¶
type PublicMinerAPI struct {
// contains filtered or unexported fields
}
PublicMinerAPI provides an API to control the miner. It offers only methods that operate on data that pose no security risk when it is publicly accessible.
func NewPublicMinerAPI ¶
func NewPublicMinerAPI(e *Ethereum) *PublicMinerAPI
NewPublicMinerAPI create a new PublicMinerAPI instance.
func (*PublicMinerAPI) Mining ¶
func (api *PublicMinerAPI) Mining() bool
Mining returns an indication if this node is currently mining.
type RPCTransaction ¶
type RPCTransaction struct { ethapi.RPCTransaction SkipReason string `json:"skipReason"` SkipBlockNumber *hexutil.Big `json:"skipBlockNumber"` SkipBlockHash *common.Hash `json:"skipBlockHash,omitempty"` // wrapped traces, currently only available for `scroll_getSkippedTransaction` API, when `MinerStoreSkippedTxTracesFlag` is set Traces *types.BlockTrace `json:"traces,omitempty"` }
RPCTransaction is the standard RPC transaction return type with some additional skip-related fields.
type ScrollAPI ¶
type ScrollAPI struct {
// contains filtered or unexported fields
}
ScrollAPI provides private RPC methods to query the L1 message database.
func NewScrollAPI ¶
NewScrollAPI creates a new RPC service to query the L1 message database.
func (*ScrollAPI) GetBlockByHash ¶
func (api *ScrollAPI) GetBlockByHash(ctx context.Context, hash common.Hash, fullTx bool) (map[string]interface{}, error)
GetBlockByHash returns the requested block. When fullTx is true all transactions in the block are returned in full detail, otherwise only the transaction hash is returned.
func (*ScrollAPI) GetBlockByNumber ¶
func (api *ScrollAPI) GetBlockByNumber(ctx context.Context, number rpc.BlockNumber, fullTx bool) (map[string]interface{}, error)
GetBlockByNumber returns the requested block. When fullTx is true all transactions in the block are returned in full detail, otherwise only the transaction hash is returned.
func (*ScrollAPI) GetFirstQueueIndexNotInL2Block ¶
func (api *ScrollAPI) GetFirstQueueIndexNotInL2Block(ctx context.Context, hash common.Hash) (queueIndex *uint64, err error)
GetFirstQueueIndexNotInL2Block returns the first L1 message queue index that is not included in the chain up to and including the provided block.
func (*ScrollAPI) GetL1MessageByIndex ¶
func (api *ScrollAPI) GetL1MessageByIndex(ctx context.Context, queueIndex uint64) (height *l1MessageTxRPC, err error)
GetL1MessageByIndex queries an L1 message by its index in the local database.
func (*ScrollAPI) GetL1SyncHeight ¶
GetL1SyncHeight returns the latest synced L1 block height from the local database.
func (*ScrollAPI) GetLatestRelayedQueueIndex ¶
func (api *ScrollAPI) GetLatestRelayedQueueIndex(ctx context.Context) (queueIndex *uint64, err error)
GetLatestRelayedQueueIndex returns the highest L1 message queue index included in the canonical chain.
func (*ScrollAPI) GetNumSkippedTransactions ¶
GetNumSkippedTransactions returns the number of skipped transactions.
func (*ScrollAPI) GetSkippedTransaction ¶
func (api *ScrollAPI) GetSkippedTransaction(ctx context.Context, hash common.Hash) (*RPCTransaction, error)
GetSkippedTransaction returns a skipped transaction by its hash.
type StorageRangeResult ¶
type StorageRangeResult struct { Storage storageMap `json:"storage"` NextKey *common.Hash `json:"nextKey"` // nil if Storage includes the last key in the trie. }
StorageRangeResult is the result of a debug_storageRangeAt API call.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package catalyst implements the temporary eth1/eth2 RPC integration.
|
Package catalyst implements the temporary eth1/eth2 RPC integration. |
Package downloader contains the manual full chain synchronisation.
|
Package downloader contains the manual full chain synchronisation. |
Package ethconfig contains the configuration of the ETH and LES protocols.
|
Package ethconfig contains the configuration of the ETH and LES protocols. |
Package fetcher contains the announcement based header, blocks or transaction synchronisation.
|
Package fetcher contains the announcement based header, blocks or transaction synchronisation. |
Package filters implements an ethereum filtering system for block, transactions and log events.
|
Package filters implements an ethereum filtering system for block, transactions and log events. |
protocols
|
|
Package tracers is a manager for transaction tracing engines.
|
Package tracers is a manager for transaction tracing engines. |
js
package js is a collection of tracers written in javascript.
|
package js is a collection of tracers written in javascript. |
js/internal/tracers
Package tracers contains the actual JavaScript tracer assets.
|
Package tracers contains the actual JavaScript tracer assets. |
native
Package native is a collection of tracers written in go.
|
Package native is a collection of tracers written in go. |