#[non_exhaustive]
pub enum GlweCiphertextDecryptionError<EngineError: Error> {
GlweDimensionMismatch,
PolynomialSizeMismatch,
Engine(EngineError),
}
Expand description
An error used with the GlweCiphertextDecryptionEngine
trait.
This type provides a
GlweCiphertextDecryptionError::perform_generic_checks
function that does error checking for the general cases, returning an Ok(())
if the inputs are valid, meaning that engine implementors would then only
need to check for their own specific errors.
Otherwise an Err(..)
with the proper error variant is returned.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
GlweDimensionMismatch
Generic error: The ciphertext and secret key GLWE dimension must be the same.
PolynomialSizeMismatch
Generic error: The ciphertext and secret key polynomial size must be the same.
Engine(EngineError)
Specific error to the implementing engine.
Implementations
pub fn perform_generic_checks<SecretKey, Ciphertext>(
key: &SecretKey,
input: &Ciphertext
) -> Result<(), Self> where
SecretKey: GlweSecretKeyEntity,
Ciphertext: GlweCiphertextEntity<KeyDistribution = SecretKey::KeyDistribution>,
pub fn perform_generic_checks<SecretKey, Ciphertext>(
key: &SecretKey,
input: &Ciphertext
) -> Result<(), Self> where
SecretKey: GlweSecretKeyEntity,
Ciphertext: GlweCiphertextEntity<KeyDistribution = SecretKey::KeyDistribution>,
Validates the inputs
Trait Implementations
impl<EngineError: PartialEq + Error> PartialEq<GlweCiphertextDecryptionError<EngineError>> for GlweCiphertextDecryptionError<EngineError>
impl<EngineError: PartialEq + Error> PartialEq<GlweCiphertextDecryptionError<EngineError>> for GlweCiphertextDecryptionError<EngineError>
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl<EngineError> RefUnwindSafe for GlweCiphertextDecryptionError<EngineError> where
EngineError: RefUnwindSafe,
impl<EngineError> Send for GlweCiphertextDecryptionError<EngineError> where
EngineError: Send,
impl<EngineError> Sync for GlweCiphertextDecryptionError<EngineError> where
EngineError: Sync,
impl<EngineError> Unpin for GlweCiphertextDecryptionError<EngineError> where
EngineError: Unpin,
impl<EngineError> UnwindSafe for GlweCiphertextDecryptionError<EngineError> where
EngineError: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more