Optimize getLogs
GQL API
#198
@ -1037,12 +1037,15 @@ func (r *Resolver) GetStorageAt(ctx context.Context, args struct {
|
||||
|
||||
func (r *Resolver) GetLogs(ctx context.Context, args struct {
|
||||
BlockHash common.Hash
|
||||
Contract *common.Address
|
||||
Addresses *[]common.Address
|
||||
}) (*[]*Log, error) {
|
||||
|
||||
var filter eth.ReceiptFilter
|
||||
if args.Contract != nil {
|
||||
filter.LogAddresses = []string{args.Contract.String()}
|
||||
|
||||
if args.Addresses != nil {
|
||||
filter.LogAddresses = make([]string, len(*args.Addresses))
|
||||
for i, address := range *args.Addresses {
|
||||
filter.LogAddresses[i] = address.String()
|
||||
}
|
||||
}
|
||||
|
||||
// Begin tx
|
||||
|
@ -343,7 +343,7 @@ const schema string = `
|
||||
getStorageAt(blockHash: Bytes32!, contract: Address!, slot: Bytes32!): StorageResult
|
||||
|
||||
# Get contract logs by block hash and contract address.
|
||||
getLogs(blockHash: Bytes32!, contract: Address): [Log!]
|
||||
getLogs(blockHash: Bytes32!, addresses: [Address!]): [Log!]
|
||||
|
||||
# PostGraphile alternative to get headers with transactions using block number or block hash.
|
||||
allEthHeaderCids(condition: EthHeaderCidCondition): EthHeaderCidsConnection
|
||||
|
Loading…
Reference in New Issue
Block a user