From 27b31d1fcc2216c5449efd7d5734907f696d734a Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 13 Oct 2025 15:02:34 +0300 Subject: [PATCH] refactor: update error methods --- aes/src/lib.rs | 14 --------- cipher-core/src/error.rs | 65 ++++++++++++++++++++++++---------------- des/src/lib.rs | 14 --------- 3 files changed, 39 insertions(+), 54 deletions(-) diff --git a/aes/src/lib.rs b/aes/src/lib.rs index b93cf3f..e69de29 100644 --- a/aes/src/lib.rs +++ b/aes/src/lib.rs @@ -1,14 +0,0 @@ -pub fn add(left: u64, right: u64) -> u64 { - left + right -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn it_works() { - let result = add(2, 2); - assert_eq!(result, 4); - } -} diff --git a/cipher-core/src/error.rs b/cipher-core/src/error.rs index 5819437..8f4ebdb 100644 --- a/cipher-core/src/error.rs +++ b/cipher-core/src/error.rs @@ -25,60 +25,73 @@ pub enum CryptoError { impl CryptoError { /// Creates a key size error - pub fn invalid_key_size(expected: usize, actual: usize) -> Self { - CryptoError::InvalidKeySize { expected, actual } + #[inline] + #[must_use] + pub const fn invalid_key_size(expected: usize, actual: usize) -> Self { + Self::InvalidKeySize { expected, actual } } /// Creates a block size error - pub fn invalid_block_size(expected: usize, actual: usize) -> Self { - CryptoError::InvalidBlockSize { expected, actual } + #[inline] + #[must_use] + pub const fn invalid_block_size(expected: usize, actual: usize) -> Self { + Self::InvalidBlockSize { expected, actual } } /// Creates an invalid padding error - pub fn invalid_padding() -> Self { - CryptoError::InvalidPadding + #[inline] + #[must_use] + pub const fn invalid_padding() -> Self { + Self::InvalidPadding } /// Creates a plaintext length error - pub fn invalid_plaintext_length(actual: usize) -> Self { - CryptoError::InvalidPlaintextLength { actual } + #[inline] + #[must_use] + pub const fn invalid_plaintext_length(actual: usize) -> Self { + Self::InvalidPlaintextLength { actual } } /// Returns true if this is a key size error - pub fn is_key_error(&self) -> bool { - matches!(self, CryptoError::InvalidKeySize { .. }) + #[inline] + #[must_use] + pub const fn is_key_error(&self) -> bool { + matches!(self, Self::InvalidKeySize { .. }) } /// Returns true if this is a block size error - pub fn is_block_error(&self) -> bool { - matches!(self, CryptoError::InvalidBlockSize { .. }) + #[inline] + #[must_use] + pub const fn is_block_error(&self) -> bool { + matches!(self, Self::InvalidBlockSize { .. }) } /// Returns true if this is a size-related error - pub fn is_size_error(&self) -> bool { - self.is_key_error() - || self.is_block_error() - || matches!(self, CryptoError::InvalidSize { .. }) + #[must_use] + pub const fn is_size_error(&self) -> bool { + self.is_key_error() || self.is_block_error() || matches!(self, Self::InvalidSize { .. }) } /// Returns the expected size for size-related errors - pub fn expected_size(&self) -> Option { + #[must_use] + pub const fn expected_size(&self) -> Option { match self { - CryptoError::InvalidKeySize { expected, .. } => Some(*expected), - CryptoError::InvalidBlockSize { expected, .. } => Some(*expected), - CryptoError::InvalidSize { expected, .. } => Some(*expected), + Self::InvalidKeySize { expected, .. } + | Self::InvalidBlockSize { expected, .. } + | Self::InvalidSize { expected, .. } => Some(*expected), _ => None, } } /// Returns the actual size for size-related errors - pub fn actual_size(&self) -> Option { + #[must_use] + pub const fn actual_size(&self) -> Option { match self { - CryptoError::InvalidKeySize { actual, .. } => Some(*actual), - CryptoError::InvalidBlockSize { actual, .. } => Some(*actual), - CryptoError::InvalidSize { actual, .. } => Some(*actual), - CryptoError::InvalidPlaintextLength { actual } => Some(*actual), - _ => None, + Self::InvalidKeySize { actual, .. } + | Self::InvalidBlockSize { actual, .. } + | Self::InvalidSize { actual, .. } + | Self::InvalidPlaintextLength { actual } => Some(*actual), + Self::InvalidPadding => None, } } } diff --git a/des/src/lib.rs b/des/src/lib.rs index b93cf3f..e69de29 100644 --- a/des/src/lib.rs +++ b/des/src/lib.rs @@ -1,14 +0,0 @@ -pub fn add(left: u64, right: u64) -> u64 { - left + right -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn it_works() { - let result = add(2, 2); - assert_eq!(result, 4); - } -}