ApiId typedef
ApiId = BigInt
The identity of a particular API interface that the runtime might provide.
The id is generated by hashing the name of the runtime api with BLAKE2 using a hash size of 8 bytes.
The name of the runtime api is the name of the trait when using decl_runtime_apis!
macro. So,
in the following runtime api declaration:
decl_runtime_apis! {
trait TestApi {
fn do_test();
}
}
The name of the trait would be TestApi
and would be taken as input to the BLAKE2 hash
function.
As Rust supports renaming of traits, the name of a runtime api given to impl_runtime_apis!
doesn't need to be the same as in decl_runtime_apis!
, but only the name in
decl_runtime_apis!
is the important one!
Implementation
typedef ApiId = BigInt;