pub type FraudProofFor<T> = FraudProof<BlockNumberFor<T>, <T as Config>::Hash, <T as Config>::DomainHeader, <T as Config>::MmrHash>;
Aliased Type§
struct FraudProofFor<T> {
pub domain_id: DomainId,
pub bad_receipt_hash: <<T as Config>::DomainHeader as Header>::Hash,
pub maybe_mmr_proof: Option<ConsensusChainMmrLeafProof<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash>>,
pub maybe_domain_runtime_code_proof: Option<DomainRuntimeCodeAt<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash>>,
pub proof: FraudProofVariant<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash, <T as Config>::DomainHeader>,
}
Fields§
§domain_id: DomainId
§bad_receipt_hash: <<T as Config>::DomainHeader as Header>::Hash
Hash of the bad receipt this fraud proof targeted
maybe_mmr_proof: Option<ConsensusChainMmrLeafProof<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash>>
The MMR proof for the consensus state root that used to verify the storage proof
It is set None
if the specific fraud proof variant doesn’t contains storage proof
maybe_domain_runtime_code_proof: Option<DomainRuntimeCodeAt<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash>>
The domain runtime code storage proof
It is set None
if the specific fraud proof variant doesn’t required domain runtime code
or the required domain runtime code is available from the current runtime state.
proof: FraudProofVariant<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number, <T as Config>::Hash, <T as Config>::MmrHash, <T as Config>::DomainHeader>
The specific fraud proof variant