package
5.6.3-darwinv2-rc0+incompatible
Repository: https://github.com/scroll-tech/go-ethereum.git
Documentation: pkg.go.dev
# Packages
Provides support for dealing with EVM assembly instructions (e.g., disassembling them).
Package bloombits implements bloom filtering on batches of data.
Package forkid implements EIP-2124 (https://eips.ethereum.org/EIPS/eip-2124).
Package rawdb contains a collection of low level database accessors.
Package state provides a caching layer atop the Ethereum state trie.
Package types contains data types related to Ethereum consensus.
Package vm implements the Ethereum Virtual Machine.
# Functions
ApplyMessage computes the new state by applying the given message against the old state within the environment.
ApplyTransaction attempts to apply a transaction to the given state database and uses the input parameters for its environment.
CalcGasLimit computes the gas limit of the next block after parent.
CanTransfer checks whether there are enough funds in the address' account to make a transfer.
DefaultGenesisBlock returns the Ethereum main net genesis block.
DefaultGoerliGenesisBlock returns the Görli network genesis block.
DefaultRinkebyGenesisBlock returns the Rinkeby network genesis block.
DefaultRopstenGenesisBlock returns the Ropsten network genesis block.
DefaultScrollAlphaGenesisBlock returns the Scroll Alpha network genesis block.
DefaultScrollMainnetGenesisBlock returns the Scroll mainnet genesis block.
DefaultScrollSepoliaGenesisBlock returns the Scroll Sepolia network genesis block.
DefaultSepoliaGenesisBlock returns the Sepolia network genesis block.
DeveloperGenesisBlock returns the 'geth --dev' genesis block.
GenerateChain creates a chain of n blocks.
GenesisBlockForTesting creates and writes a block in which addr has the given wei balance.
GetHashFn returns a GetHashFunc which retrieves header hashes by number.
IntrinsicGas computes the 'intrinsic gas' for a message with the given data.
NewBlockChain returns a fully initialised block chain using information available in the database.
NewBlockValidator returns a new block validator which is safe for re-use.
NewBloomIndexer returns a chain indexer that generates bloom bits data for the canonical chain for fast logs filtering.
NewChainIndexer creates a new chain indexer to do background processing on chain segments of a given size after certain number of confirmations passed.
NewEVMBlockContext creates a new context for use in the EVM.
NewEVMTxContext creates a new transaction context for a single transaction.
NewHeaderChain creates a new HeaderChain structure.
NewStateProcessor initialises a new StateProcessor.
NewStateTransition initialises and returns a new state transition object.
NewTxPool creates a new transaction pool to gather, sort and filter inbound transactions from the network.
SetupGenesisBlock writes or updates the genesis block in db.
No description provided by the author
Transfer subtracts amount from sender and adds amount to recipient using the given Db.
# Constants
BlockChainVersion ensures that an incompatible database forces a resync from scratch.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Variables
BadHashes represent a set of manually tracked bad hashes (usually hard forks).
DefaultTxPoolConfig contains the default configurations for the transaction pool.
ErrAlreadyKnown is returned if the transactions is already contained within the pool.
ErrBannedHash is returned if a block to import is on the banned list.
ErrFeeCapTooLow is returned if the transaction fee cap is less than the the base fee of the block.
ErrFeeCapVeryHigh is a sanity error to avoid extremely big numbers specified in the fee cap field.
ErrGasLimit is returned if a transaction's requested gas limit exceeds the maximum allowance of the current block.
ErrGasLimitReached is returned by the gas pool if the amount of gas required by a transaction is higher than what's left in the block.
ErrGasUintOverflow is returned when calculating gas usage.
ErrInsufficientFunds is returned if the total cost of executing a transaction is higher than the balance of the user's account.
ErrInsufficientFundsForTransfer is returned if the transaction sender doesn't have enough funds for transfer(topmost call only).
ErrIntrinsicGas is returned if the transaction is specified to use less gas than required to start the invocation.
ErrInvalidBlockPayloadSize is returned when a block to import has an oversized payload.
ErrInvalidSender is returned if the transaction contains an invalid signature.
ErrKnownBlock is returned when a block to import is already known locally.
ErrMaxInitCodeSizeExceeded is returned if creation transaction provides the init code bigger than init code size limit.
ErrNegativeValue is a sanity error to ensure no one is able to specify a transaction with a negative value.
ErrNoGenesis is returned when there is no Genesis Block.
ErrNonceMax is returned if the nonce of a transaction sender account has maximum allowed value and would become invalid if incremented.
ErrNonceTooHigh is returned if the nonce of a transaction is higher than the next one expected based on the local chain.
ErrNonceTooLow is returned if the nonce of a transaction is lower than the one present in the local chain.
ErrOversizedData is returned if the input data of a transaction is greater than some meaningful limit a user might use.
ErrReplaceUnderpriced is returned if a transaction is attempted to be replaced with a different one without the required price bump.
ErrSenderNoEOA is returned if the sender of a transaction is a contract.
ErrTipAboveFeeCap is a sanity error to ensure no one is able to specify a transaction with a tip higher than the total fee cap.
ErrTipVeryHigh is a sanity error to avoid extremely big numbers specified in the tip field.
ErrTxPoolOverflow is returned if the transaction pool is full and can't accpet another remote transaction.
ErrTxTypeNotSupported is returned if a transaction is not supported in the current network configuration.
ErrUnderpriced is returned if a transaction's gas price is below the minimum configured for the transaction pool.
# Structs
BlockChain represents the canonical chain given a database with a genesis block.
BlockGen creates blocks for testing.
BlockValidator is responsible for validating block headers, uncles and processed state.
BloomIndexer implements a core.ChainIndexer, building up a rotated bloom bits index for the Ethereum header bloom filters, permitting blazing fast filtering.
CacheConfig contains the configuration values for the trie caching/pruning that's resident in a blockchain.
No description provided by the author
No description provided by the author
ChainIndexer does a post-processing job for equally sized sections of the canonical chain (like BlooomBits and CHT structures).
No description provided by the author
ExecutionResult includes all output after executing given evm message no matter the execution itself is successful or not.
Genesis specifies the header fields, state of a genesis block.
GenesisAccount is an account in the state of the genesis block.
GenesisMismatchError is raised when trying to overwrite an existing genesis block with an incompatible one.
HeaderChain implements the basic block header chain logic that is shared by core.BlockChain and light.LightChain.
NewL1MsgsEvent is posted when we receive some new messages from L1.
NewMinedBlockEvent is posted when a block has been imported.
NewTxsEvent is posted when a batch of transactions enter the transaction pool.
RemovedLogsEvent is posted when a reorg happens.
StateProcessor is a basic Processor, which takes care of transitioning state from one point to another.
The State Transitioning Model
A state transition is a change made when a transaction is applied to the current world state
The state transitioning model does all the necessary work to work out a valid new state root.
TxPool contains all currently known transactions.
TxPoolConfig are the configuration parameters of the transaction pool.
# Interfaces
ChainContext supports retrieving headers and consensus parameters from the current blockchain to be used during transaction processing.
ChainIndexerBackend defines the methods needed to process chain segments in the background and write the segment results into the database.
ChainIndexerChain interface is used for connecting the indexer to a blockchain.
Message represents a message sent to a contract.
Prefetcher is an interface for pre-caching transaction signatures and state.
Processor is an interface for processing blocks using a given initial state.
Validator is an interface which defines the standard for block validation.
# Type aliases
No description provided by the author
GasPool tracks the amount of gas available during execution of the transactions in a block.
GenesisAlloc specifies the initial state that is part of the genesis block.
TxStatus is the current status of a transaction as seen by the pool.
No description provided by the author
WriteStatus status of write.