Struct hex_buffer_serde::HexForm
source · pub struct HexForm<T>(_);
Available on crate feature
alloc
only.Expand description
A dummy container for use inside #[serde(with)]
attribute if the underlying type
implements Hex
.
Why a separate container?
We need a separate type (instead of just using impl<T> Hex<T> for T
)
both for code clarity and because otherwise invocations within generated serde
code
would be ambiguous for types implementing Serialize
/ Deserialize
.
Trait Implementations
sourceimpl<T, E> Hex<T> for HexForm<T>where
T: AsRef<[u8]> + for<'a> TryFrom<&'a [u8], Error = E>,
E: Display,
impl<T, E> Hex<T> for HexForm<T>where
T: AsRef<[u8]> + for<'a> TryFrom<&'a [u8], Error = E>,
E: Display,
sourcefn create_bytes(buffer: &T) -> Cow<'_, [u8]>
fn create_bytes(buffer: &T) -> Cow<'_, [u8]>
Available on crate feature
alloc
only.Converts the value into bytes. This is used for serialization. Read more
sourcefn from_bytes(bytes: &[u8]) -> Result<T, Self::Error>
fn from_bytes(bytes: &[u8]) -> Result<T, Self::Error>
Available on crate feature
alloc
only.Creates a value from the byte slice. Read more
sourcefn serialize<S: Serializer>(value: &T, serializer: S) -> Result<S::Ok, S::Error>
fn serialize<S: Serializer>(value: &T, serializer: S) -> Result<S::Ok, S::Error>
Available on crate feature
alloc
only.Serializes the value for
serde
. This method is not meant to be overridden. Read moresourcefn deserialize<'de, D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
fn deserialize<'de, D>(deserializer: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
Available on crate feature
alloc
only.Deserializes a value using
serde
. This method is not meant to be overridden. Read moreAuto Trait Implementations
impl<T> RefUnwindSafe for HexForm<T>where
T: RefUnwindSafe,
impl<T> Send for HexForm<T>where
T: Send,
impl<T> Sync for HexForm<T>where
T: Sync,
impl<T> Unpin for HexForm<T>where
T: Unpin,
impl<T> UnwindSafe for HexForm<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more