Expand description
Types and traits for runtimes that implement runtime APIs.
A testing runtime should not need this.
A non-testing runtime should have this enabled, as such:
use polkadot_sdk_frame::runtime::{prelude::*, apis::{*,}};
Re-exports§
pub use sp_api;
Modules§
Macros§
- _frame_
metadata_ enabled - _std_
disabled - _std_
enabled - decl_
runtime_ apis - frame_
metadata_ enabled - impl_
runtime_ apis - mock_
impl_ runtime_ apis - std_
disabled - std_
enabled
Structs§
- ApiRef
- Auxiliary wrapper that holds an api instance and binds it to the given lifetime.
- Call
ApiAt Params - Parameters for
CallApiAt::call_api_at
. - Equivocation
Proof - Proof of voter misbehavior on a given set id. Misbehavior/equivocation in GRANDPA happens when a voter votes on the same round (either at prevote or precommit stage) for different blocks. Proving is achieved by collecting the signed messages of conflicting votes.
- Grandpa
Justification - A GRANDPA justification for block finality, it includes a commit message and an ancestry proof including all headers routing all precommit target blocks to the commit target block. Due to the current voting strategy the precommit targets should be the same as the commit target, since honest voters don’t vote past authority set change blocks.
- KeyType
Id - An identifier for a type of cryptographic key.
- Scheduled
Change - A scheduled change of authority set.
- Slot
- Unit type wrapper that represents a slot.
- Slot
Duration - A slot duration defined in milliseconds.
- Storage
Proof - A proof that some set of key-value pairs are included in the storage trie. The proof contains the storage values so that the partial storage backend can be reconstructed by a verifier that does not already have access to the key-value pairs.
Enums§
- ApiError
- An error describing which API call failed.
- Call
Context - The context in which a call is done.
- Check
Inherents Error - Errors that occur when creating and checking on the client side.
- Equivocation
- Wrapper object for GRANDPA equivocation proofs, useful for unifying prevote and precommit equivocations under a common type.
- Transaction
Outcome - Describes on what should happen with a storage transaction.
Constants§
- AURA_
ENGINE_ ID - The
ConsensusEngineId
of AuRa. - CLIENT_
LOG_ TARGET - The log target to be used by client code.
- DEV_
RUNTIME_ PRESET - The default
development
preset used to communicate with the runtime viaGenesisBuilder
interface. - GRANDPA_
ENGINE_ ID - The
ConsensusEngineId
of GRANDPA. - KEY_
TYPE - Key type for GRANDPA module.
- LOCAL_
TESTNET_ RUNTIME_ PRESET - The default
local_testnet
preset used to communicate with the runtime viaGenesisBuilder
interface. - RUNTIME_
API_ INFO_ SIZE - The number of bytes required to encode a
RuntimeApiInfo
. - RUNTIME_
LOG_ TARGET - The log target to be used by runtime code.
- STORAGE_
PREFIX - Persistent storage prefix used by the Offchain Worker API when creating a DB key.
Traits§
- Account
Nonce Api - The API to query account nonce.
- ApiExt
- Extends the runtime api implementation with some common functionality.
- AuraApi
- API necessary for block authorship with aura.
- Block
Builder - The
BlockBuilder
api trait that provides the required functionality for building a block. - Call
ApiAt - Something that can call into an api at a given block.
- Construct
Runtime Api - Something that can be constructed to a runtime api.
- Core
- The
Core
runtime api that every Substrate runtime needs to implement. - Genesis
Builder - API to interact with
RuntimeGenesisConfig
for the runtime - Grandpa
Api - APIs for integrating the GRANDPA finality gadget into runtimes. This should be implemented on the runtime side.
- Metadata
- The
Metadata
api trait that returns metadata for the runtime. - Offchain
Worker Api - The offchain worker api.
- Provide
Runtime Api - Something that provides a runtime api.
- Runtime
ApiInfo - Something that provides information about a runtime api.
- Session
Keys - Session keys runtime api.
- Tagged
Transaction Queue - The
TaggedTransactionQueue
api trait for interfering with the transaction queue.
Functions§
- check_
equivocation_ proof - Verifies the equivocation proof by making sure that both votes target different blocks and that its signatures are valid.
- check_
inherents - Create inherent data and check that the inherents are valid.
- check_
inherents_ with_ data - Check that the inherents are valid.
- check_
message_ signature - Check a message signature by encoding the message as a localized payload and verifying the provided signature using the expected authority id.
- check_
message_ signature_ with_ buffer - Check a message signature by encoding the message as a localized payload and verifying the provided signature using the expected authority id. The encoding necessary to verify the signature will be done using the given buffer, the original content of the buffer will be cleared.
- deserialize_
runtime_ api_ info - Deserialize the runtime API info serialized by
serialize_runtime_api_info
. - init_
runtime_ logger - Init the
RuntimeLogger
. - localized_
payload - Encode round message localized to a given round and set id.
- localized_
payload_ with_ buffer - Encode round message localized to a given round and set id using the given buffer. The given buffer will be cleared and the resulting encoded payload will always be written to the start of the buffer.
- serialize_
runtime_ api_ info - Crude and simple way to serialize the
RuntimeApiInfo
into a bunch of bytes. - sign_
message - Localizes the message to the given set and round and signs the payload.
Type Aliases§
- Authority
Id - Identity of a Grandpa authority.
- Authority
List - A list of Grandpa authorities with associated weights.
- Authority
Pair - The grandpa crypto scheme defined via the keypair type.
- Authority
Signature - Signature for a Grandpa authority.
- Authority
Weight - The weight of an authority.
- CatchUp
- A catch up message for this chain’s block type.
- Commit
- A commit message for this chain’s block type.
- Compact
Commit - A compact commit message for this chain’s block type.
- Message
- A GRANDPA message for a substrate chain.
- Opaque
KeyOwnership Proof - An opaque type used to represent the key ownership proof at the runtime API
boundary. The inner value is an encoded representation of the actual key
ownership proof which will be parameterized when defining the runtime. At
the runtime API boundary this type is unknown and as such we keep this
opaque representation, implementors of the runtime API will have to make
sure that all usages of
OpaqueKeyOwnershipProof
refer to the same type. - Precommit
- A precommit message for this chain’s block type.
- Preset
Id - The type representing preset ID.
- Prevote
- A prevote message for this chain’s block type.
- Primary
Propose - A primary propose message for this chain’s block type.
- Proof
Recorder - A type that records all accessed trie nodes and generates a proof out of it.
- Result
- The result type alias, used in build methods.
Err
contains formatted error message. - Round
Number - The round indicator.
- SetId
- The monotonic identifier of a GRANDPA set of authorities.
- Signed
Message - A signed message.
- Storage
Changes