From 15b7f0523c980b80f73b8c7e1dd79132bde18dbe Mon Sep 17 00:00:00 2001 From: Andrea Fioraldi Date: Fri, 23 Apr 2021 17:32:25 +0200 Subject: [PATCH] separate impl_serdeany macro for std and not --- libafl/src/bolts/serdeany.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/libafl/src/bolts/serdeany.rs b/libafl/src/bolts/serdeany.rs index c9ae9d4ab8..37a543093d 100644 --- a/libafl/src/bolts/serdeany.rs +++ b/libafl/src/bolts/serdeany.rs @@ -496,6 +496,7 @@ macro_rules! create_serde_registry_for_trait { create_serde_registry_for_trait!(serdeany_registry, crate::bolts::serdeany::SerdeAny); pub use serdeany_registry::*; +#[cfg(feature = "std")] #[macro_export] macro_rules! impl_serdeany { ($struct_name:ident) => { @@ -517,3 +518,19 @@ macro_rules! impl_serdeany { } }; } + +#[cfg(not(feature = "std"))] +#[macro_export] +macro_rules! impl_serdeany { + ($struct_name:ident) => { + impl $crate::bolts::serdeany::SerdeAny for $struct_name { + fn as_any(&self) -> &dyn core::any::Any { + self + } + + fn as_any_mut(&mut self) -> &mut dyn core::any::Any { + self + } + } + }; +}