package
0.0.0-20231025030425-6ec8c495a25d
Repository: https://github.com/hpb-project/go-hpb.git
Documentation: pkg.go.dev

# Packages

Package bloombits implements bloom filtering on batches of data.
Package state provides a caching layer atop the Hpb state trie.
No description provided by the author
Package types contains data types related to Hpb consensus.

# Functions

ApplyMessage computes the new state by applying the given message against the old state within the environment.
ApplyMessageNonContract returns the bytes returned by any EVM execution (if it took place), the gas used (which includes gas refunds) and an error if it failed.
ApplyTransaction attempts to apply a transaction to the given state database and uses the input parameters for its environment.
No description provided by the author
ApplyTransaction attempts to apply a transaction to the given state database and uses the input parameters for its environment.
ApplyTransaction attempts to apply a transaction to the given state database and uses the input parameters for its 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.
DefaultGenesisBlock returns the Hpb main net genesis block.
DefaultTestnetGenesisBlock returns the Ropsten network genesis block.
DeleteBlock removes all block data associated with a hash.
DeleteBlockReceipts removes all receipt data associated with a block hash.
DeleteBody removes all block body data associated with a hash.
DeleteCanonicalHash removes the number to hash canonical mapping.
DeleteHeader removes all block header data associated with a hash.
DeleteTd removes all block total difficulty data associated with a hash.
DeleteTxLookupEntry removes all transaction data associated with a hash.
No description provided by the author
DevGenesisBlock returns the 'geth --dev' genesis block.
FindCommonAncestor returns the last common ancestor of two block headers.
GenerateChain creates a chain of n blocks.
GenesisBlockForTesting creates and writes a block in which addr has the given wei balance.
GetBlock retrieves an entire block corresponding to the hash, assembling it back from the stored header and body.
GetBlockChainVersion reads the version number from db.
No description provided by the author
GetBlockNumber returns the block number assigned to a block hash if the corresponding header is present in the database.
GetBlockReceipts retrieves the receipts generated by the transactions included in a block given by its hash.
GetBloomBits retrieves the compressed bloom bit vector belonging to the given section and bit index from the.
GetBody retrieves the block body (transactons, uncles) corresponding to the hash, nil if none found.
GetBodyRLP retrieves the block body (transactions and uncles) in RLP encoding.
GetCanonicalHash retrieves a hash assigned to a canonical block number.
GetChainConfig will fetch the network settings based on the given hash.
GetHeadBlockHash retrieves the hash of the current canonical head block.
GetHeader retrieves the block header corresponding to the hash, nil if none found.
GetHeaderRLP retrieves a block header in its raw RLP database encoding, or nil if the header's not found.
GetHeadFastBlockHash retrieves the hash of the current canonical head block during fast synchronization.
GetHeadHeaderHash retrieves the hash of the current canonical head block's header.
GetRandom.
GetReceipt retrieves a specific transaction receipt from the database, along with its added positional metadata.
GetTd retrieves a block's total difficulty corresponding to the hash, nil if none found.
GetTransaction retrieves a specific transaction from the database, along with its added positional metadata.
GetTxLookupEntry retrieves the positional metadata associated with a transaction hash to allow retrieving the transaction or receipt by hash.
No description provided by the author
InstanceBlockChain returns the singleton of BlockChain.
NewBlockChain returns a fully initialised block chain using information available in the database.
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.
NewChainIndexer creates a new chain indexer to do background processing on chain segments of a given size after certain number of confirmations passed.
NewHeaderChain creates a new HeaderChain structure.
NewStateProcessor initialises a new StateProcessor.
NewStateTransition initialises and returns a new state transition object.
No description provided by the author
PreimageTable returns a Database instance with the key prefix for preimage entries.
SetReceiptsData computes all the non-consensus fields of the receipts.
No description provided by the author
No description provided by the author
WriteBlock serializes a block into the database, header and body separately.
WriteBlockChainVersion writes vsn as the version number to db.
No description provided by the author
WriteBlockReceipts stores all the transaction receipts belonging to a block as a single receipt slice.
WriteBloomBits writes the compressed bloom bits vector belonging to the given section and bit index.
WriteBody serializes the body of a block into the database.
WriteBodyRLP writes a serialized body of a block into the database.
WriteCanonicalHash stores the canonical hash for the given block number.
WriteChainConfig writes the chain config settings to the database.
WriteHeadBlockHash stores the head block's hash.
WriteHeader serializes a block header into the database.
WriteHeadFastBlockHash stores the fast head block's hash.
WriteHeadHeaderHash stores the head header's hash.
WritePreimages writes the provided set of preimages to the database.
WriteRandom.
WriteTd serializes the total difficulty of a block into the database.
WriteTxLookupEntries stores a positional metadata for every transaction from a block, enabling hash based transaction and receipt lookups.
No description provided by the author

# 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

# Variables

No description provided by the author
BloomBitsIndexPrefix is the data table of a chain indexer to track its progress.
ErrBlacklistedHash is returned if a block to import is on the blacklist.
general config not found error.
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.
No description provided by the author
ErrKnownBlock is returned when a block to import is already known locally.
ErrNonceTooHigh is returned if the nonce of a transaction is higher than the next one expected based on the local chain.
No description provided by the author

# 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.
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 bc.BlockChain and light.LightChain.
NewMinedBlockEvent is posted when a block has been imported.
PendingLogsEvent is posted pre mining and notifies of pending logs.
PendingStateEvent is posted pre mining and notifies of pending state changes.
RemovedLogsEvent is posted when a reorg happens.
RemovedTransactionEvent 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 all the necessary work to work out a valid new state root.
TxPreEvent is posted when a transaction enters the transaction pool.

# Interfaces

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.
DatabaseDeleter wraps the Delete method of a backing data store.
DatabaseReader wraps the Get method of a backing data store.
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

DeleteCallback is a callback function that is called by SetHead before each header is deleted.
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.
WhCallback is a callback function for inserting individual headers.
WriteStatus status of write.