Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var DEFAULT_BLOCKS_PER_REQUEST = 1000
TODO: we should detect this automatically
View Source
var DEFAULT_LOGS_PER_REQUEST = 100
View Source
var DEFAULT_TRACES_PER_REQUEST = 100
Functions ¶
This section is empty.
Types ¶
type Block ¶
type Block struct { ChainId *big.Int `json:"chain_id"` Number *big.Int `json:"number"` Hash string `json:"hash"` ParentHash string `json:"parent_hash"` Timestamp uint64 `json:"timestamp"` Nonce string `json:"nonce"` Sha3Uncles string `json:"sha3_uncles"` MixHash string `json:"mix_hash"` Miner string `json:"miner"` StateRoot string `json:"state_root"` TransactionsRoot string `json:"transactions_root"` ReceiptsRoot string `json:"receipts_root"` LogsBloom string `json:"logs_bloom"` Size uint64 `json:"size"` ExtraData string `json:"extra_data"` Difficulty *big.Int `json:"difficulty"` TotalDifficulty *big.Int `json:"total_difficulty"` TransactionCount uint64 `json:"transaction_count"` GasLimit *big.Int `json:"gas_limit"` GasUsed *big.Int `json:"gas_used"` WithdrawalsRoot string `json:"withdrawals_root"` BaseFeePerGas uint64 `json:"base_fee_per_gas"` }
type BlockData ¶
type BlockData struct { Block Block Transactions []Transaction Logs []Log Traces []Trace }
type BlockFailure ¶
type BlocksPerRequest ¶
type Log ¶
type Log struct { ChainId *big.Int `json:"chain_id"` BlockNumber *big.Int `json:"block_number"` BlockHash string `json:"block_hash"` BlockTimestamp uint64 `json:"block_timestamp"` TransactionHash string `json:"transaction_hash"` TransactionIndex uint64 `json:"transaction_index"` LogIndex uint64 `json:"log_index"` Address string `json:"address"` Data string `json:"data"` Topics []string `json:"topics"` }
type RPC ¶
type RPC struct { RPCClient *rpc.Client EthClient *ethclient.Client SupportsTraceBlock bool IsWebsocket bool URL string ChainID *big.Int BlocksPerRequest BlocksPerRequest }
func InitializeRPC ¶
type Trace ¶
type Trace struct { ChainID *big.Int `json:"chain_id"` BlockNumber *big.Int `json:"block_number"` BlockHash string `json:"block_hash"` BlockTimestamp uint64 `json:"block_timestamp"` TransactionHash string `json:"transaction_hash"` TransactionIndex uint64 `json:"transaction_index"` Subtraces int64 `json:"subtraces"` TraceAddress []uint64 `json:"trace_address"` TraceType string `json:"trace_type"` CallType string `json:"call_type"` Error string `json:"error"` FromAddress string `json:"from_address"` ToAddress string `json:"to_address"` Gas *big.Int `json:"gas"` GasUsed *big.Int `json:"gas_used"` Input string `json:"input"` Output string `json:"output"` Value *big.Int `json:"value"` Author string `json:"author"` RewardType string `json:"reward_type"` RefundAddress string `json:"refund_address"` }
type Transaction ¶
type Transaction struct { ChainId *big.Int `json:"chain_id"` Hash string `json:"hash"` Nonce uint64 `json:"nonce"` BlockHash string `json:"block_hash"` BlockNumber *big.Int `json:"block_number"` BlockTimestamp uint64 `json:"block_timestamp"` TransactionIndex uint64 `json:"transaction_index"` FromAddress string `json:"from_address"` ToAddress string `json:"to_address"` Value *big.Int `json:"value"` Gas uint64 `json:"gas"` GasPrice *big.Int `json:"gas_price"` Data string `json:"data"` MaxFeePerGas *big.Int `json:"max_fee_per_gas"` MaxPriorityFeePerGas *big.Int `json:"max_priority_fee_per_gas"` TransactionType uint8 `json:"transaction_type"` R *big.Int `json:"r"` S *big.Int `json:"s"` V *big.Int `json:"v"` AccessListJson string `json:"access_list_json"` }
Click to show internal directories.
Click to hide internal directories.