The init macro registers a custom get random function in the system which is required
because ethabi that we rely on for ABI decoding/encoding primitives use it somewhere in
its transitive set of dependencies and causes problem in wasm32-unknown-unknown target.
This macro can be used to import an Ethereum ABI file in JSON format and generate all the
required bindings for ABI decoding/encoding in Rust, targetting substreams developer
experience. You prefer to have the code generated directly, check out Abigen.
Builder struct for generating type-safe bindings Rust code directly in your project from a contract’s ABI.
This is equivalent to code generated by macro use_contract.
Ethereum events with indexed parameters that are of dynamic types like a ‘string’,
‘bytes’ or array of value do not contain the actual value in the log. Instead, they
contain a hash of the value. This struct is used to represent such values in the
decoded event.