From 5ebf95d36fabae707ade7facd70f4fc1b393afce Mon Sep 17 00:00:00 2001 From: Facundo Tuesca Date: Sun, 22 Jun 2025 12:04:07 +0200 Subject: [PATCH 1/2] Add WriteError variant for custom errors Signed-off-by: Facundo Tuesca --- src/writer.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/writer.rs b/src/writer.rs index bcdaefa5..1d43f052 100644 --- a/src/writer.rs +++ b/src/writer.rs @@ -8,12 +8,14 @@ use alloc::{fmt, vec}; #[derive(PartialEq, Eq, Debug)] pub enum WriteError { AllocationError, + CustomError(String), } impl fmt::Display for WriteError { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { WriteError::AllocationError => write!(f, "allocation error"), + WriteError::CustomError(s) => write!(f, "{s}"), } } } @@ -788,5 +790,9 @@ mod tests { fn test_write_error_display() { use alloc::string::ToString; assert_eq!(&WriteError::AllocationError.to_string(), "allocation error"); + assert_eq!( + &WriteError::CustomError("my error".to_string()).to_string(), + "my error" + ); } } From d7d4aa32fb2ccbe5e34afa52044cef631a4092b4 Mon Sep 17 00:00:00 2001 From: Facundo Tuesca Date: Sun, 22 Jun 2025 15:12:16 +0200 Subject: [PATCH 2/2] Use `&'static str` for WriteError messages Signed-off-by: Facundo Tuesca --- src/writer.rs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/writer.rs b/src/writer.rs index 1d43f052..acaadd19 100644 --- a/src/writer.rs +++ b/src/writer.rs @@ -8,7 +8,7 @@ use alloc::{fmt, vec}; #[derive(PartialEq, Eq, Debug)] pub enum WriteError { AllocationError, - CustomError(String), + CustomError(&'static str), } impl fmt::Display for WriteError { @@ -790,9 +790,6 @@ mod tests { fn test_write_error_display() { use alloc::string::ToString; assert_eq!(&WriteError::AllocationError.to_string(), "allocation error"); - assert_eq!( - &WriteError::CustomError("my error".to_string()).to_string(), - "my error" - ); + assert_eq!(&WriteError::CustomError("my error").to_string(), "my error"); } }