Enum concrete_core::specification::engines::LweCiphertextVectorDiscardingEncryptionError
source · [−]#[non_exhaustive]
pub enum LweCiphertextVectorDiscardingEncryptionError<EngineError: Error> {
LweDimensionMismatch,
PlaintextCountMismatch,
Engine(EngineError),
}
Expand description
An error used with the LweCiphertextVectorDiscardingEncryptionEngine
trait.
This type provides a
LweCiphertextVectorDiscardingEncryptionError::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
LweDimensionMismatch
Generic error: The key and output LWE dimensions must be the same.
PlaintextCountMismatch
Generic error: The input plaintext count and the output ciphertext count must be the same.
Engine(EngineError)
Specific error to the implementing engine.
Implementations
pub fn perform_generic_checks<SecretKey, PlaintextVector, CiphertextVector>(
key: &SecretKey,
output: &CiphertextVector,
input: &PlaintextVector
) -> Result<(), Self> where
SecretKey: LweSecretKeyEntity,
PlaintextVector: PlaintextVectorEntity,
CiphertextVector: LweCiphertextVectorEntity<KeyDistribution = SecretKey::KeyDistribution>,
pub fn perform_generic_checks<SecretKey, PlaintextVector, CiphertextVector>(
key: &SecretKey,
output: &CiphertextVector,
input: &PlaintextVector
) -> Result<(), Self> where
SecretKey: LweSecretKeyEntity,
PlaintextVector: PlaintextVectorEntity,
CiphertextVector: LweCiphertextVectorEntity<KeyDistribution = SecretKey::KeyDistribution>,
Validates the inputs
Trait Implementations
impl<EngineError: Clone + Error> Clone for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Clone + Error> Clone for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Debug + Error> Debug for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Debug + Error> Debug for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Error> Display for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Error> Display for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: PartialEq + Error> PartialEq<LweCiphertextVectorDiscardingEncryptionError<EngineError>> for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: PartialEq + Error> PartialEq<LweCiphertextVectorDiscardingEncryptionError<EngineError>> for LweCiphertextVectorDiscardingEncryptionError<EngineError>
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
impl<EngineError: Eq + Error> Eq for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Error> StructuralEq for LweCiphertextVectorDiscardingEncryptionError<EngineError>
impl<EngineError: Error> StructuralPartialEq for LweCiphertextVectorDiscardingEncryptionError<EngineError>
Auto Trait Implementations
impl<EngineError> RefUnwindSafe for LweCiphertextVectorDiscardingEncryptionError<EngineError> where
EngineError: RefUnwindSafe,
impl<EngineError> Send for LweCiphertextVectorDiscardingEncryptionError<EngineError> where
EngineError: Send,
impl<EngineError> Sync for LweCiphertextVectorDiscardingEncryptionError<EngineError> where
EngineError: Sync,
impl<EngineError> Unpin for LweCiphertextVectorDiscardingEncryptionError<EngineError> where
EngineError: Unpin,
impl<EngineError> UnwindSafe for LweCiphertextVectorDiscardingEncryptionError<EngineError> where
EngineError: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more