mithril_stm/protocol/key_registration/
snark_registration_entry.rs

1use crate::membership_commitment::MerkleTreeSnarkLeaf;
2
3use super::ClosedRegistrationEntry;
4
5/// The type used for committing signer registrations for the Snark proof system.
6pub type RegistrationEntryForSnark = MerkleTreeSnarkLeaf;
7
8impl From<ClosedRegistrationEntry> for Option<RegistrationEntryForSnark> {
9    fn from(entry: ClosedRegistrationEntry) -> Option<RegistrationEntryForSnark> {
10        let vk = entry.get_verification_key_for_snark()?;
11        let target = entry.get_lottery_target_value()?;
12        Some(MerkleTreeSnarkLeaf(vk, target))
13    }
14}