We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a184212 commit a35f56fCopy full SHA for a35f56f
src/macros.rs
@@ -64,9 +64,19 @@ macro_rules! serde_impl(
64
fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<$t, D::Error> {
65
use ::serde::de::Error;
66
use core::str::FromStr;
67
+ #[cfg(feature = "std")]
68
+ use std::borrow::Cow;
69
70
if d.is_human_readable() {
71
+ // If std is available support deserializing from owned strings
72
73
+ let s_cow: Cow<'de, str> = ::serde::Deserialize::deserialize(d)?;
74
75
+ let sl = &s_cow;
76
+
77
+ #[cfg(not(feature = "std"))]
78
let sl: &str = ::serde::Deserialize::deserialize(d)?;
79
80
SecretKey::from_str(sl).map_err(D::Error::custom)
81
} else {
82
let sl: &[u8] = ::serde::Deserialize::deserialize(d)?;
0 commit comments