From 47081f32dbe4a3e2a45e63a63416d0b3dd12462f Mon Sep 17 00:00:00 2001 From: Alexey Shekhirin Date: Mon, 30 Sep 2024 17:31:45 +0300 Subject: [PATCH] improve comments --- crates/eip7702/src/auth_list.rs | 3 +-- crates/eip7702/src/lib.rs | 12 ++++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/crates/eip7702/src/auth_list.rs b/crates/eip7702/src/auth_list.rs index 937e5be..5e900b2 100644 --- a/crates/eip7702/src/auth_list.rs +++ b/crates/eip7702/src/auth_list.rs @@ -375,7 +375,7 @@ mod tests { /// Bincode-compatible [`SignedAuthorization`] serde implementation. #[cfg(all(feature = "serde", feature = "serde-bincode-compat"))] -pub mod serde_bincode_compat { +pub(super) mod serde_bincode_compat { use alloc::borrow::Cow; use alloy_primitives::Signature; use serde::{Deserialize, Deserializer, Serialize, Serializer}; @@ -400,7 +400,6 @@ pub mod serde_bincode_compat { /// ``` #[derive(Debug, Serialize, Deserialize)] struct SignedAuthorization<'a> { - // Bincode doesn't support `#[serde(flatten)]`: inner: Cow<'a, Authorization>, signature: Cow<'a, Signature>, } diff --git a/crates/eip7702/src/lib.rs b/crates/eip7702/src/lib.rs index 5fa75a1..eeff14a 100644 --- a/crates/eip7702/src/lib.rs +++ b/crates/eip7702/src/lib.rs @@ -11,3 +11,15 @@ mod auth_list; pub use auth_list::*; pub mod constants; + +/// Bincode-compatible serde implementations for EIP-7702 types. +/// +/// `bincode` crate doesn't work with `#[serde(flatten)]` attribute, but some of the EIP-7702 types +/// require flattenning for RPC compatibility. This module makes so that all fields are +/// non-flattenned. +/// +/// Read more: +#[cfg(all(feature = "serde", feature = "serde-bincode-compat"))] +pub mod serde_bincode_compat { + pub use super::auth_list::serde_bincode_compat::*; +}