diff --git a/ibc-apps/ics20-transfer/src/lib.rs b/ibc-apps/ics20-transfer/src/lib.rs index 8c2c31d9c..2f2bec601 100644 --- a/ibc-apps/ics20-transfer/src/lib.rs +++ b/ibc-apps/ics20-transfer/src/lib.rs @@ -24,7 +24,6 @@ pub mod types { pub use ibc_app_transfer_types::*; } -#[cfg(feature = "serde")] pub mod context; #[cfg(feature = "serde")] pub mod handler; diff --git a/ibc-apps/ics20-transfer/types/src/amount.rs b/ibc-apps/ics20-transfer/types/src/amount.rs index 435cdc571..7754f4723 100644 --- a/ibc-apps/ics20-transfer/types/src/amount.rs +++ b/ibc-apps/ics20-transfer/types/src/amount.rs @@ -16,8 +16,8 @@ use super::error::TokenTransferError; #[derive(Copy, Clone, Debug, Eq, PartialEq, PartialOrd, Ord, Display, From, Into)] pub struct Amount( #[cfg_attr(feature = "schema", schemars(with = "String"))] - #[serde(serialize_with = "serializers::serialize")] - #[serde(deserialize_with = "deserialize")] + #[cfg_attr(feature = "serde", serde(serialize_with = "serializers::serialize"))] + #[cfg_attr(feature = "serde", serde(deserialize_with = "deserialize"))] U256, ); diff --git a/ibc-apps/ics20-transfer/types/src/lib.rs b/ibc-apps/ics20-transfer/types/src/lib.rs index 44fe89603..9ef3e8413 100644 --- a/ibc-apps/ics20-transfer/types/src/lib.rs +++ b/ibc-apps/ics20-transfer/types/src/lib.rs @@ -15,27 +15,18 @@ #[cfg(any(test, feature = "std"))] extern crate std; -#[cfg(feature = "serde")] mod amount; -#[cfg(feature = "serde")] -pub use amount::*; -#[cfg(feature = "serde")] mod coin; -#[cfg(feature = "serde")] -pub use coin::*; -#[cfg(feature = "serde")] mod denom; -#[cfg(feature = "serde")] +mod memo; + +pub use amount::*; +pub use coin::*; pub use denom::*; -#[cfg(feature = "serde")] +pub mod error; pub mod events; -#[cfg(feature = "serde")] pub mod msgs; -#[cfg(feature = "serde")] pub mod packet; - -pub mod error; -mod memo; pub use memo::*; /// Re-exports `U256` from `primitive-types` crate for convenience. pub use primitive_types::U256; diff --git a/ibc-apps/ics721-nft-transfer/types/src/data.rs b/ibc-apps/ics721-nft-transfer/types/src/data.rs index 098c8c094..c94e9ee31 100644 --- a/ibc-apps/ics721-nft-transfer/types/src/data.rs +++ b/ibc-apps/ics721-nft-transfer/types/src/data.rs @@ -2,7 +2,9 @@ use core::fmt::{self, Display, Formatter}; use core::str::FromStr; +#[cfg(feature = "serde")] use base64::prelude::BASE64_STANDARD; +#[cfg(feature = "serde")] use base64::Engine; use ibc_core::primitives::prelude::*; use mime::Mime; @@ -25,6 +27,7 @@ use crate::error::NftTransferError; #[derive(Clone, Debug, Default, PartialEq, Eq, derive_more::From)] pub struct Data(String); +#[cfg(feature = "serde")] impl Data { /// Parses the data in the format specified by ICS-721. pub fn parse_as_ics721_data(&self) -> Result { @@ -46,6 +49,7 @@ impl FromStr for Data { } } +#[cfg(feature = "serde")] impl serde::Serialize for Data { fn serialize(&self, serializer: S) -> Result where @@ -55,6 +59,7 @@ impl serde::Serialize for Data { } } +#[cfg(feature = "serde")] impl<'de> serde::Deserialize<'de> for Data { fn deserialize(deserializer: D) -> Result where @@ -86,6 +91,7 @@ impl<'de> serde::Deserialize<'de> for Data { #[derive(Clone, Debug, Default, PartialEq, Eq)] pub struct Ics721Data(BTreeMap); +#[cfg(feature = "serde")] impl FromStr for Ics721Data { type Err = NftTransferError; diff --git a/ibc-apps/ics721-nft-transfer/types/src/lib.rs b/ibc-apps/ics721-nft-transfer/types/src/lib.rs index 8ca548269..7a55e1368 100644 --- a/ibc-apps/ics721-nft-transfer/types/src/lib.rs +++ b/ibc-apps/ics721-nft-transfer/types/src/lib.rs @@ -17,28 +17,19 @@ #[cfg(any(test, feature = "std"))] extern crate std; -#[cfg(feature = "serde")] mod class; -#[cfg(feature = "serde")] -pub use class::*; -#[cfg(feature = "serde")] mod data; -#[cfg(feature = "serde")] -pub use data::*; -#[cfg(feature = "serde")] +mod memo; +mod token; + pub mod events; -#[cfg(feature = "serde")] pub mod msgs; -#[cfg(feature = "serde")] +pub use class::*; +pub use data::*; pub mod packet; -#[cfg(feature = "serde")] -mod token; -#[cfg(feature = "serde")] +pub use memo::*; pub use token::*; - pub mod error; -mod memo; -pub use memo::*; /// Re-exports ICS-721 NFT transfer proto types from the `ibc-proto` crate. pub mod proto { diff --git a/ibc-apps/ics721-nft-transfer/types/src/packet.rs b/ibc-apps/ics721-nft-transfer/types/src/packet.rs index 90120935a..efa8e6264 100644 --- a/ibc-apps/ics721-nft-transfer/types/src/packet.rs +++ b/ibc-apps/ics721-nft-transfer/types/src/packet.rs @@ -17,7 +17,7 @@ use crate::token::{TokenData, TokenIds, TokenUri}; /// Defines the structure of token transfers' packet bytes #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] -#[serde(rename_all = "camelCase")] +#[cfg_attr(feature = "serde", serde(rename_all = "camelCase"))] #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))] #[cfg_attr( feature = "parity-scale-codec",