From ca8d186a84c08599df787badd53cf3fba2c6d3ed Mon Sep 17 00:00:00 2001 From: Tony Arcieri Date: Wed, 9 Feb 2022 13:16:17 -0700 Subject: [PATCH] base64ct: add `Eq`/`PartialEq` bounds to `Encoding`/`Variant` --- base64ct/src/encoding.rs | 2 +- base64ct/src/variant.rs | 2 +- base64ct/src/variant/bcrypt.rs | 2 +- base64ct/src/variant/crypt.rs | 2 +- base64ct/src/variant/standard.rs | 4 ++-- base64ct/src/variant/url.rs | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/base64ct/src/encoding.rs b/base64ct/src/encoding.rs index d79728fd0..63afedbef 100644 --- a/base64ct/src/encoding.rs +++ b/base64ct/src/encoding.rs @@ -16,7 +16,7 @@ const PAD: u8 = b'='; /// /// This trait must be imported to make use of any Base64 variant defined /// in this crate. -pub trait Encoding: 'static + Copy + Clone + Debug + Send + Sized + Sync { +pub trait Encoding: 'static + Copy + Debug + Eq + Send + Sized + Sync { /// Decode a Base64 string into the provided destination buffer. fn decode(src: impl AsRef<[u8]>, dst: &mut [u8]) -> Result<&[u8], Error>; diff --git a/base64ct/src/variant.rs b/base64ct/src/variant.rs index 019512e22..75bc14b91 100644 --- a/base64ct/src/variant.rs +++ b/base64ct/src/variant.rs @@ -8,7 +8,7 @@ pub mod standard; pub mod url; /// Core encoder/decoder functions for a particular Base64 variant -pub trait Variant: 'static + Copy + Clone + Debug + Send + Sized + Sync { +pub trait Variant: 'static + Copy + Debug + Eq + Send + Sized + Sync { /// Unpadded equivalent of this variant. /// /// For variants that are unpadded to begin with, this should be `Self`. diff --git a/base64ct/src/variant/bcrypt.rs b/base64ct/src/variant/bcrypt.rs index 80e24bc95..cea05b243 100644 --- a/base64ct/src/variant/bcrypt.rs +++ b/base64ct/src/variant/bcrypt.rs @@ -8,7 +8,7 @@ use super::{Decode, Encode, Variant}; /// ./ [A-Z] [a-z] [0-9] /// 0x2e-0x2f, 0x41-0x5a, 0x61-0x7a, 0x30-0x39 /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64Bcrypt; impl Variant for Base64Bcrypt { diff --git a/base64ct/src/variant/crypt.rs b/base64ct/src/variant/crypt.rs index 5ca9ed50f..748225435 100644 --- a/base64ct/src/variant/crypt.rs +++ b/base64ct/src/variant/crypt.rs @@ -8,7 +8,7 @@ use super::{Decode, Encode, Variant}; /// [.-9] [A-Z] [a-z] /// 0x2e-0x39, 0x41-0x5a, 0x61-0x7a /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64Crypt; impl Variant for Base64Crypt { diff --git a/base64ct/src/variant/standard.rs b/base64ct/src/variant/standard.rs index 29ed9cca1..c10bf55e0 100644 --- a/base64ct/src/variant/standard.rs +++ b/base64ct/src/variant/standard.rs @@ -8,7 +8,7 @@ use super::{Decode, Encode, Variant}; /// [A-Z] [a-z] [0-9] + / /// 0x41-0x5a, 0x61-0x7a, 0x30-0x39, 0x2b, 0x2f /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64; impl Variant for Base64 { @@ -25,7 +25,7 @@ impl Variant for Base64 { /// [A-Z] [a-z] [0-9] + / /// 0x41-0x5a, 0x61-0x7a, 0x30-0x39, 0x2b, 0x2f /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64Unpadded; impl Variant for Base64Unpadded { diff --git a/base64ct/src/variant/url.rs b/base64ct/src/variant/url.rs index 3c37abfed..cb454455d 100644 --- a/base64ct/src/variant/url.rs +++ b/base64ct/src/variant/url.rs @@ -8,7 +8,7 @@ use super::{Decode, Encode, Variant}; /// [A-Z] [a-z] [0-9] - _ /// 0x41-0x5a, 0x61-0x7a, 0x30-0x39, 0x2d, 0x5f /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64Url; impl Variant for Base64Url { @@ -25,7 +25,7 @@ impl Variant for Base64Url { /// [A-Z] [a-z] [0-9] - _ /// 0x41-0x5a, 0x61-0x7a, 0x30-0x39, 0x2d, 0x5f /// ``` -#[derive(Copy, Clone, Debug)] +#[derive(Copy, Clone, Debug, Eq, PartialEq)] pub struct Base64UrlUnpadded; impl Variant for Base64UrlUnpadded {