package
0.0.0-20201217075903-aecdb050f89d
Repository: https://github.com/lvbin2012/neuralchain.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 rawdb contains a collection of low level database accessors.
Package state provides a caching layer atop the NeuralChain state trie.
Copyright 2014 The NeuralChain Authors This file is part of the NeuralChain library .
Package vm implements the NeuralChain 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 NeuralChain main net genesis block.
DefaultGoerliGenesisBlock returns the Görli network genesis block.
DefaultRinkebyGenesisBlock returns the Rinkeby network genesis block.
DefaultTestnetGenesisBlock returns the Ropsten network genesis block.
DeveloperGenesisBlock returns the 'gnc --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.
NewChainIndexer creates a new chain indexer to do background processing on chain segments of a given size after certain number of confirmations passed.
NewEVMContext creates a new context for use in the EVM.
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.
ErrBlacklistedHash is returned if a block to import is on the blacklist.
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.
ErrInsufficientFunds is returned if the total cost of executing a transaction is higher than the balance of the user's account (fee's paid by user).
ErrIntrinsicGas is returned if the transaction is specified to use less gas than required to start the invocation.
ErrInvalidAddressToModifyProviders is returned when modifying providers transaction is sent to non-enterprise contract.
ErrInvalidGasPrice is returned if tx gasPrice is different from gasPrice of the network.
ErrInvalidProvider is returned if the transaction contains an invalid signature.
ErrInvalidSender is returned if the transaction contains an invalid signature.
ErrKnownBlock is returned when a block to import is already known locally.
ErrNegativeValue is a sanity error to ensure noone is able to specify a transaction with a negative value.
ErrNoGenesis is returned when there is no Genesis Block.
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.
ErrOnlyOwner is returned if modifying providers transaction is not from owner of enterprise contract.
ErrOversizedData is returned if the input data of a transaction is greater than some meaningful limit a user might use.
ErrProviderInsufficientFunds is returned if the transaction fee is higher than the balance of the provider's account (fee's paid by provider).
ErrProviderSignatureIsRequired is returned if the transaction to enterprise contract does not contain a provider signature.
ErrRedundantProviderSignature is returned if the transaction does not require provider to sign but still contains a provider's signature.
ErrReplaceUnderpriced is returned if a transaction is attempted to be replaced with a different one without the required price bump.
ErrOversizedData is returned if new tx has the same nonce with an old one.
ErrSenderInsufficientFunds is returned if the transaction value is higher than the balance of the user's account (fee's paid by provider).
ErrTxPoolFull is returned tx pool is full.
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.
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
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.
NewMinedBlockEvent is posted when a block has been imported.
NewTxsEvent is posted when a batch of transactions enter the transaction pool.
PendingLogsEvent is posted pre mining and notifies of pending logs.
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
WhCallback is a callback function for inserting individual headers.
WriteStatus status of write.