Versions in this module Expand all Collapse all v1 v1.2.2 Apr 7, 2024 Changes in this version + const AccessListTxType + const BloomBitLength + const BloomByteLength + const DynamicFeeTxType + const LegacyTxType + const ReceiptStatusFailed + const ReceiptStatusSuccessful + var EmptyBlockSeal = []byte + var EmptyEpochSnarkData = EpochSnarkData + var EmptyRandomness = Randomness + var EmptyRootHash = common.HexToHash("56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421") + var EmptyUncleHash = rlpHash([]*Header(nil)) + var ErrGasFeeCapTooLow = errors.New("fee cap less than base fee") + var ErrInvalidChainId = errors.New("invalid chain id for signer") + var ErrInvalidIstanbulHeaderExtra = errors.New("invalid istanbul header extra-data") + var ErrInvalidSig = errors.New("invalid transaction v, r, s values") + var ErrInvalidTxType = errors.New("transaction type not valid in this context") + var ErrTxTypeNotSupported = errors.New("transaction type not supported") + var ErrUnexpectedProtection = errors.New("transaction type does not supported EIP-155 protected signatures") + var IstanbulExtraBlsSignature = blscrypto.SIGNATUREBYTES + var IstanbulExtraSeal = 65 + var IstanbulExtraVanity = 32 + func Bloom9(data []byte) []byte + func BloomLookup(bin Bloom, topic bytesBacked) bool + func ConvertToStringSlice(addresses []common.Address) []string + func DeriveSha(list DerivableList, hasher TrieHasher) common.Hash + func DeriveTire(rs types.Receipts, tr *trie.Trie) *trie.Trie + func Fee(gasPrice *big.Int, gasLimit uint64, gatewayFee *big.Int) *big.Int + func LogsBloom(logs []*Log) []byte + func Sender(signer Signer, tx *Transaction) (common.Address, error) + type AccessList []AccessTuple + func (al AccessList) StorageKeys() int + type AccessListTx struct + AccessList AccessList + ChainID *big.Int + Data []byte + Gas uint64 + GasPrice *big.Int + Nonce uint64 + R *big.Int + S *big.Int + To *common.Address + V *big.Int + Value *big.Int + type AccessTuple struct + Address common.Address + StorageKeys []common.Hash + func (a *AccessTuple) UnmarshalJSON(input []byte) error + func (a AccessTuple) MarshalJSON() ([]byte, error) + type Block struct + ReceivedAt time.Time + ReceivedFrom interface{} + func NewBlock(header *Header, txs []*Transaction, receipts []*Receipt, ...) *Block + func NewBlockWithHeader(header *Header) *Block + func (b *Block) BaseFee() *big.Int + func (b *Block) Bloom() Bloom + func (b *Block) Body() *Body + func (b *Block) Coinbase() common.Address + func (b *Block) DecodeRLP(s *rlp.Stream) error + func (b *Block) EncodeRLP(w io.Writer) error + func (b *Block) EpochSnarkData() *EpochSnarkData + func (b *Block) Extra() []byte + func (b *Block) GasLimit() uint64 + func (b *Block) GasUsed() uint64 + func (b *Block) Hash() common.Hash + func (b *Block) Header() *Header + func (b *Block) MixDigest() common.Hash + func (b *Block) MutableHeader() *Header + func (b *Block) Nonce() uint64 + func (b *Block) Number() *big.Int + func (b *Block) NumberU64() uint64 + func (b *Block) ParentHash() common.Hash + func (b *Block) Randomness() *Randomness + func (b *Block) ReceiptHash() common.Hash + func (b *Block) Root() common.Hash + func (b *Block) SanityCheck() error + func (b *Block) Size() common.StorageSize + func (b *Block) Time() uint64 + func (b *Block) TotalDifficulty() *big.Int + func (b *Block) Transaction(hash common.Hash) *Transaction + func (b *Block) Transactions() Transactions + func (b *Block) TxHash() common.Hash + func (b *Block) WithBody(transactions []*Transaction, randomness *Randomness, ...) *Block + func (b *Block) WithEpochSnarkData(epochSnarkData *EpochSnarkData) *Block + func (b *Block) WithHeader(header *Header) *Block + func (b *Block) WithRandomness(randomness *Randomness) *Block + func (b *Block) WithSeal(header *Header) *Block + type BlockNonce [8]byte + func EncodeNonce(i uint64) BlockNonce + func (n *BlockNonce) UnmarshalText(input []byte) error + func (n BlockNonce) MarshalText() ([]byte, error) + func (n BlockNonce) Uint64() uint64 + type Blocks []*Block + type Bloom [BloomByteLength]byte + func BytesToBloom(b []byte) Bloom + func CreateBloom(receipts Receipts) Bloom + func (b *Bloom) Add(d []byte) + func (b *Bloom) SetBytes(d []byte) + func (b *Bloom) UnmarshalText(input []byte) error + func (b Bloom) Big() *big.Int + func (b Bloom) Bytes() []byte + func (b Bloom) MarshalText() ([]byte, error) + func (b Bloom) Test(topic []byte) bool + type Body struct + EpochSnarkData *EpochSnarkData + Randomness *Randomness + Transactions []*Transaction + type CallMsg struct + AccessList AccessList + Data []byte + From common.Address + Gas uint64 + GasFeeCap *big.Int + GasPrice *big.Int + GasTipCap *big.Int + To *common.Address + Value *big.Int + type DerivableList interface + EncodeIndex func(int, *bytes.Buffer) + Len func() int + type DynamicFeeTx struct + AccessList AccessList + ChainID *big.Int + Data []byte + Gas uint64 + GasFeeCap *big.Int + GasTipCap *big.Int + Nonce uint64 + R *big.Int + S *big.Int + To *common.Address + V *big.Int + Value *big.Int + type EIP155Signer struct + func NewEIP155Signer(chainId *big.Int) EIP155Signer + func (s EIP155Signer) ChainID() *big.Int + func (s EIP155Signer) Equal(s2 Signer) bool + func (s EIP155Signer) Hash(tx *Transaction) common.Hash + func (s EIP155Signer) Sender(tx *Transaction) (common.Address, error) + func (s EIP155Signer) SignatureValues(tx *Transaction, sig []byte) (R, S, V *big.Int, err error) + type EpochSnarkData struct + Bitmap *big.Int + Signature []byte + func (r *EpochSnarkData) DecodeRLP(s *rlp.Stream) error + func (r *EpochSnarkData) EncodeRLP(w io.Writer) error + func (r *EpochSnarkData) IsEmpty() bool + func (r *EpochSnarkData) Size() common.StorageSize + type FrontierSigner struct + func (fs FrontierSigner) Hash(tx *Transaction) common.Hash + func (fs FrontierSigner) Sender(tx *Transaction) (common.Address, error) + func (fs FrontierSigner) SignatureValues(tx *Transaction, sig []byte) (r, s, v *big.Int, err error) + func (s FrontierSigner) ChainID() *big.Int + func (s FrontierSigner) Equal(s2 Signer) bool + type Header struct + BaseFee *big.Int + Bloom Bloom + Coinbase common.Address + Extra []byte + GasLimit uint64 + GasUsed uint64 + MixDigest common.Hash + Nonce BlockNonce + Number *big.Int + ParentHash common.Hash + ReceiptHash common.Hash + Root common.Hash + Time uint64 + TxHash common.Hash + func CopyHeader(h *Header) *Header + func IstanbulFilteredHeader(h *Header, keepSeal bool) *Header + func (h *Header) EmptyBody() bool + func (h *Header) EmptyReceipts() bool + func (h *Header) Hash() common.Hash + func (h *Header) SanityCheck() error + func (h *Header) Size() common.StorageSize + func (h *Header) UnmarshalJSON(input []byte) error + func (h Header) MarshalJSON() ([]byte, error) + type HomesteadSigner struct + func (hs HomesteadSigner) Sender(tx *Transaction) (common.Address, error) + func (hs HomesteadSigner) SignatureValues(tx *Transaction, sig []byte) (r, s, v *big.Int, err error) + func (s HomesteadSigner) ChainID() *big.Int + func (s HomesteadSigner) Equal(s2 Signer) bool + type IstanbulAggregatedSeal struct + Bitmap *big.Int + Round *big.Int + Signature []byte + func (ist *IstanbulAggregatedSeal) String() string + type IstanbulEpochValidatorSetSeal struct + Bitmap *big.Int + Signature []byte + type IstanbulExtra struct + AddedValidators []common.Address + AddedValidatorsG1PublicKeys []blscrypto.SerializedG1PublicKey + AddedValidatorsPublicKeys []blscrypto.SerializedPublicKey + AggregatedSeal IstanbulAggregatedSeal + ParentAggregatedSeal IstanbulAggregatedSeal + RemovedValidators *big.Int + Seal []byte + func ExtractIstanbulExtra(h *Header) (*IstanbulExtra, error) + func (ist *IstanbulExtra) DecodeRLP(s *rlp.Stream) error + func (ist *IstanbulExtra) EncodeRLP(w io.Writer) error + type LegacyTx struct + Data []byte + Gas uint64 + GasPrice *big.Int + Nonce uint64 + R *big.Int + S *big.Int + To *common.Address + V *big.Int + Value *big.Int + type Log struct + Address common.Address + BlockHash common.Hash + BlockNumber uint64 + Data []byte + Index uint + Removed bool + Topics []common.Hash + TxHash common.Hash + TxIndex uint + func (l *Log) DecodeRLP(s *rlp.Stream) error + func (l *Log) EncodeRLP(w io.Writer) error + func (l *Log) UnmarshalJSON(input []byte) error + func (l Log) MarshalJSON() ([]byte, error) + type LogForStorage Log + func (l *LogForStorage) DecodeRLP(s *rlp.Stream) error + func (l *LogForStorage) EncodeRLP(w io.Writer) error + type Message struct + func NewMessage(from common.Address, to *common.Address, nonce uint64, amount *big.Int, ...) Message + func (m Message) AccessList() AccessList + func (m Message) Data() []byte + func (m Message) From() common.Address + func (m Message) Gas() uint64 + func (m Message) GasFeeCap() *big.Int + func (m Message) GasPrice() *big.Int + func (m Message) GasTipCap() *big.Int + func (m Message) IsFake() bool + func (m Message) Nonce() uint64 + func (m Message) To() *common.Address + func (m Message) Value() *big.Int + type Randomness struct + Committed common.Hash + Revealed common.Hash + func (r *Randomness) DecodeRLP(s *rlp.Stream) error + func (r *Randomness) EncodeRLP(w io.Writer) error + func (r *Randomness) Size() common.StorageSize + type Receipt struct + BlockHash common.Hash + BlockNumber *big.Int + Bloom Bloom + ContractAddress common.Address + CumulativeGasUsed uint64 + GasUsed uint64 + Logs []*Log + PostState []byte + Status uint64 + TransactionIndex uint + TxHash common.Hash + Type uint8 + func NewReceipt(root []byte, failed bool, cumulativeGasUsed uint64) *Receipt + func (r *Receipt) DecodeRLP(s *rlp.Stream) error + func (r *Receipt) EncodeRLP(w io.Writer) error + func (r *Receipt) MarshalBinary() ([]byte, error) + func (r *Receipt) Size() common.StorageSize + func (r *Receipt) UnmarshalBinary(b []byte) error + func (r *Receipt) UnmarshalJSON(input []byte) error + func (r Receipt) MarshalJSON() ([]byte, error) + type ReceiptForStorage Receipt + func (r *ReceiptForStorage) DecodeRLP(s *rlp.Stream) error + func (r *ReceiptForStorage) EncodeRLP(w io.Writer) error + type Receipts []*Receipt + func (rs Receipts) DeriveFields(config *params.ChainConfig, hash common.Hash, number uint64, txs Transactions) error + func (rs Receipts) EncodeIndex(i int, w *bytes.Buffer) + func (rs Receipts) Len() int + type Signer interface + ChainID func() *big.Int + Equal func(Signer) bool + Hash func(tx *Transaction) common.Hash + Sender func(tx *Transaction) (common.Address, error) + SignatureValues func(tx *Transaction, sig []byte) (r, s, v *big.Int, err error) + func LatestSigner(config *params.ChainConfig) Signer + func LatestSignerForChainID(chainID *big.Int) Signer + func MakeSigner(config *params.ChainConfig, blockNumber *big.Int) Signer + func NewEIP2930Signer(chainId *big.Int) Signer + func NewLondonSigner(chainId *big.Int) Signer + type StateDB interface + AddAddressToAccessList func(addr common.Address) + AddBalance func(common.Address, *big.Int) + AddLog func(*Log) + AddPreimage func(common.Hash, []byte) + AddRefund func(uint64) + AddSlotToAccessList func(addr common.Address, slot common.Hash) + AddressInAccessList func(addr common.Address) bool + CreateAccount func(common.Address) + Empty func(common.Address) bool + Exist func(common.Address) bool + ForEachPOWStorage func(common.Address, func(common.Hash, []byte) bool) + ForEachStorage func(common.Address, func(common.Hash, common.Hash) bool) error + GetBalance func(common.Address) *big.Int + GetCode func(common.Address) []byte + GetCodeHash func(common.Address) common.Hash + GetCodeSize func(common.Address) int + GetCommittedState func(common.Address, common.Hash) common.Hash + GetNonce func(common.Address) uint64 + GetPOWState func(common.Address, common.Hash) []byte + GetRefund func() uint64 + GetState func(common.Address, common.Hash) common.Hash + HasSuicided func(common.Address) bool + PrepareAccessList func(sender common.Address, dest *common.Address, precompiles []common.Address, ...) + RevertToSnapshot func(int) + SetCode func(common.Address, []byte) + SetNonce func(common.Address, uint64) + SetPOWState func(common.Address, common.Hash, []byte) + SetState func(common.Address, common.Hash, common.Hash) + SlotInAccessList func(addr common.Address, slot common.Hash) (addressOk bool, slotOk bool) + Snapshot func() int + SubBalance func(common.Address, *big.Int) + SubRefund func(uint64) + Suicide func(common.Address) bool + type Transaction struct + func MustSignNewTx(prv *ecdsa.PrivateKey, s Signer, txdata TxData) *Transaction + func NewContractCreation(nonce uint64, amount *big.Int, gasLimit uint64, gasPrice *big.Int, data []byte) *Transaction + func NewTransaction(nonce uint64, to common.Address, amount *big.Int, gasLimit uint64, ...) *Transaction + func NewTx(inner TxData) *Transaction + func SignNewTx(prv *ecdsa.PrivateKey, s Signer, txdata TxData) (*Transaction, error) + func SignTx(tx *Transaction, s Signer, prv *ecdsa.PrivateKey) (*Transaction, error) + func (t *Transaction) MarshalJSON() ([]byte, error) + func (t *Transaction) UnmarshalJSON(input []byte) error + func (tx *Transaction) AccessList() AccessList + func (tx *Transaction) AsMessage(s Signer, baseFee *big.Int) (Message, error) + func (tx *Transaction) ChainId() *big.Int + func (tx *Transaction) Cost() *big.Int + func (tx *Transaction) Data() []byte + func (tx *Transaction) DecodeRLP(s *rlp.Stream) error + func (tx *Transaction) EffectiveGasTip(baseFee *big.Int) (*big.Int, error) + func (tx *Transaction) EffectiveGasTipCmp(other *Transaction, baseFee *big.Int) int + func (tx *Transaction) EffectiveGasTipIntCmp(other *big.Int, baseFee *big.Int) int + func (tx *Transaction) EffectiveGasTipValue(baseFee *big.Int) *big.Int + func (tx *Transaction) EncodeRLP(w io.Writer) error + func (tx *Transaction) Fee() *big.Int + func (tx *Transaction) FeeCurrency() *common.Address + func (tx *Transaction) Gas() uint64 + func (tx *Transaction) GasFeeCap() *big.Int + func (tx *Transaction) GasFeeCapCmp(other *Transaction) int + func (tx *Transaction) GasFeeCapIntCmp(other *big.Int) int + func (tx *Transaction) GasPrice() *big.Int + func (tx *Transaction) GasTipCap() *big.Int + func (tx *Transaction) GasTipCapCmp(other *Transaction) int + func (tx *Transaction) GasTipCapIntCmp(other *big.Int) int + func (tx *Transaction) Hash() common.Hash + func (tx *Transaction) MarshalBinary() ([]byte, error) + func (tx *Transaction) Nonce() uint64 + func (tx *Transaction) Protected() bool + func (tx *Transaction) RawSignatureValues() (v, r, s *big.Int) + func (tx *Transaction) Size() common.StorageSize + func (tx *Transaction) To() *common.Address + func (tx *Transaction) Type() uint8 + func (tx *Transaction) UnmarshalBinary(b []byte) error + func (tx *Transaction) Value() *big.Int + func (tx *Transaction) WithSignature(signer Signer, sig []byte) (*Transaction, error) + type Transactions []*Transaction + func TxDifference(a, b Transactions) Transactions + func (s Transactions) EncodeIndex(i int, w *bytes.Buffer) + func (s Transactions) Len() int + type TransactionsByPriceAndNonce struct + func NewTransactionsByPriceAndNonce(signer Signer, txs map[common.Address]Transactions, baseFee *big.Int) *TransactionsByPriceAndNonce + func (t *TransactionsByPriceAndNonce) Peek() *Transaction + func (t *TransactionsByPriceAndNonce) Pop() + func (t *TransactionsByPriceAndNonce) Shift() + type TrieHasher interface + Hash func() common.Hash + Reset func() + Update func([]byte, []byte) error + type TxByNonce Transactions + func (s TxByNonce) Len() int + func (s TxByNonce) Less(i, j int) bool + func (s TxByNonce) Swap(i, j int) + type TxByPriceAndTime []*TxWithMinerFee + func (s *TxByPriceAndTime) Pop() interface{} + func (s *TxByPriceAndTime) Push(x interface{}) + func (s TxByPriceAndTime) Len() int + func (s TxByPriceAndTime) Less(i, j int) bool + func (s TxByPriceAndTime) Swap(i, j int) + type TxData interface + type TxWithMinerFee struct + func NewTxWithMinerFee(tx *Transaction, baseFee *big.Int) (*TxWithMinerFee, error)