gorge/pkg/block/block.go

41 lines
1.3 KiB
Go

package block
import (
"math/big"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core/types"
)
type FetchResponse struct {
Block MinimalBlock `json:"block"`
TransactionsCount int `json:"transactionsCount"`
Transactions []MinimalTransaction `json:"transactions"`
}
type MinimalBlock struct {
Hash common.Hash `json:"hash"`
Number *big.Int `json:"number"`
Bloom types.Bloom `json:"logsBloom"`
GasLimit uint64 `json:"gasLimit"`
GasUsed uint64 `json:"gasUsed"`
Time uint64 `json:"timestamp"`
}
type MinimalTransaction struct {
Hash common.Hash `json:"hash"`
From common.Address `json:"from"`
To *common.Address `json:"to"`
Gas uint64 `json:"gas"`
GasPrice *big.Int `json:"gasPrice"`
Nonce uint64 `json:"nonce"`
Value *big.Int `json:"value"`
InputData string `json:"input"`
TransactionIndex uint `json:"transactionIndex"`
Status uint64 `json:"status"`
GasUsed uint64 `json:"gasUsed"`
Bloom types.Bloom `json:"logsBloom"`
Logs []*types.Log `json:"logs"`
ContractAddress common.Address `json:"contractAddress"`
}