pub struct Str;Expand description
Adapter to serialize types using their Display and FromStr implementations
§Example
use serde::{Deserialize, Serialize};
use serde_json::json;
#[derive(Deserialize, Serialize)]
struct Foo(#[serde(with = "serdapt::Str")] i32);
let v = serde_json::to_value(Foo(33)).unwrap();
assert_eq!(v, json!("33"));Implementations§
Source§impl Str
impl Str
Sourcepub fn serialize<T, S>(value: &T, serializer: S) -> Result<S::Ok, S::Error>
pub fn serialize<T, S>(value: &T, serializer: S) -> Result<S::Ok, S::Error>
Serializes value with adapter
Sourcepub fn deserialize<'de, T, D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
Self: DeserializeWith<'de, T>,
pub fn deserialize<'de, T, D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
Self: DeserializeWith<'de, T>,
Deserializes value with adapter
Trait Implementations§
Source§impl<'de, T> DeserializeWith<'de, T> for Str
impl<'de, T> DeserializeWith<'de, T> for Str
Source§fn deserialize_with<D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
fn deserialize_with<D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
Deserializes a value using
deserializerSource§impl<T> SerializeWith<T> for Str
impl<T> SerializeWith<T> for Str
Source§fn serialize_with<S: Serializer>(
value: &T,
serializer: S,
) -> Result<S::Ok, S::Error>
fn serialize_with<S: Serializer>( value: &T, serializer: S, ) -> Result<S::Ok, S::Error>
Serializes
value using serializerAuto Trait Implementations§
impl Freeze for Str
impl RefUnwindSafe for Str
impl Send for Str
impl Sync for Str
impl Unpin for Str
impl UnwindSafe for Str
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more