pub trait PEPMessageType: Debug {
type PEPMessage: HasPEPParticipantInfo + Serialize + Debug;
type Message: HasParticipantInfo + Debug;
// Required methods
async fn pack<R: RngCore + CryptoRng>(
request: Self::Message,
domain_to: PseudonymizationDomain,
ps: &mut PseudonymService,
rng: &mut R,
) -> Result<Self::PEPMessage, ApiError>;
async fn unpack(
request: Self::PEPMessage,
ps: &mut PseudonymService,
) -> Result<Self::Message, ApiError>;
}
Required Associated Types§
type PEPMessage: HasPEPParticipantInfo + Serialize + Debug
type Message: HasParticipantInfo + Debug
Required Methods§
async fn pack<R: RngCore + CryptoRng>( request: Self::Message, domain_to: PseudonymizationDomain, ps: &mut PseudonymService, rng: &mut R, ) -> Result<Self::PEPMessage, ApiError>
async fn unpack( request: Self::PEPMessage, ps: &mut PseudonymService, ) -> Result<Self::Message, ApiError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.