6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/evm_client/event_log.rb', line 6
def self.build(raw_response:, contract:)
signature = raw_response['topics'][0]
event = contract.events.find { |event| signature.match(event.signature) }
new(
address: raw_response['address'],
block_hash: raw_response['blockHash'],
block_number: raw_response['blockNumber'].to_i(16),
data: raw_response['data'],
log_index: raw_response['logIndex'],
removed: raw_response['removed'],
topics: raw_response['topics'],
transaction_hash: raw_response['transactionHash'],
transaction_index: raw_response['transactionIndex'],
signature: signature,
contract: contract,
event: event
)
end
|