Trait sp_consensus::ProofRecording [−][src]
pub trait ProofRecording: Send + Sync + Sealed + 'static { type Proof: Send + Sync + 'static; const ENABLED: bool; fn into_proof(
storage_proof: Option<StorageProof>
) -> Result<Self::Proof, NoProofRecorded>; }
Expand description
A trait to express the state of proof recording on type system level.
This is used by Proposer
to signal if proof recording is enabled. This can be used by
downstream users of the Proposer
trait to enforce that proof recording is activated when
required. The only two implementations of this trait are DisableProofRecording
and
EnableProofRecording
.
This trait is sealed and can not be implemented outside of this crate!
Associated Types
Associated Constants
Required methods
fn into_proof(
storage_proof: Option<StorageProof>
) -> Result<Self::Proof, NoProofRecorded>
fn into_proof(
storage_proof: Option<StorageProof>
) -> Result<Self::Proof, NoProofRecorded>
Convert the given storage_proof
into Self::Proof
.
Internally Substrate uses Option<StorageProof>
to express the both states of proof
recording (for now) and as Self::Proof
is some different type, we need to provide a
function to convert this value.
If the proof recording was requested, but None
is given, this will return
Err(NoProofRecorded)
.