Struct tinystr::UnvalidatedTinyAsciiStr
source · pub struct UnvalidatedTinyAsciiStr<const N: usize>(pub(crate) [u8; N]);
Expand description
A fixed-length bytes array that is expected to be an ASCII string but does not enforce that invariant.
Use this type instead of TinyAsciiStr
if you don’t need to enforce ASCII during deserialization. For
example, strings that are keys of a map don’t need to ever be reified as TinyAsciiStr
s.
The main advantage of this type over [u8; N]
is that it serializes as a string in
human-readable formats like JSON.
Tuple Fields§
§0: [u8; N]
Implementations§
source§impl<const N: usize> UnvalidatedTinyAsciiStr<N>
impl<const N: usize> UnvalidatedTinyAsciiStr<N>
pub fn try_into_tinystr(&self) -> Result<TinyAsciiStr<N>, TinyStrError>
Trait Implementations§
source§impl<const N: usize> AsULE for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> AsULE for UnvalidatedTinyAsciiStr<N>
§type ULE = UnvalidatedTinyAsciiStr<N>
type ULE = UnvalidatedTinyAsciiStr<N>
The ULE type corresponding to
Self
. Read moresource§fn to_unaligned(self) -> Self::ULE
fn to_unaligned(self) -> Self::ULE
source§fn from_unaligned(unaligned: Self::ULE) -> Self
fn from_unaligned(unaligned: Self::ULE) -> Self
source§impl<const N: usize> Clone for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Clone for UnvalidatedTinyAsciiStr<N>
source§fn clone(&self) -> UnvalidatedTinyAsciiStr<N>
fn clone(&self) -> UnvalidatedTinyAsciiStr<N>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<const N: usize> Debug for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Debug for UnvalidatedTinyAsciiStr<N>
source§impl<const N: usize> From<TinyAsciiStr<N>> for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> From<TinyAsciiStr<N>> for UnvalidatedTinyAsciiStr<N>
source§fn from(other: TinyAsciiStr<N>) -> Self
fn from(other: TinyAsciiStr<N>) -> Self
Converts to this type from the input type.
source§impl<const N: usize> Ord for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Ord for UnvalidatedTinyAsciiStr<N>
source§fn cmp(&self, other: &UnvalidatedTinyAsciiStr<N>) -> Ordering
fn cmp(&self, other: &UnvalidatedTinyAsciiStr<N>) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl<const N: usize> PartialEq for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> PartialEq for UnvalidatedTinyAsciiStr<N>
source§fn eq(&self, other: &UnvalidatedTinyAsciiStr<N>) -> bool
fn eq(&self, other: &UnvalidatedTinyAsciiStr<N>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<const N: usize> PartialOrd for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> PartialOrd for UnvalidatedTinyAsciiStr<N>
source§fn partial_cmp(&self, other: &UnvalidatedTinyAsciiStr<N>) -> Option<Ordering>
fn partial_cmp(&self, other: &UnvalidatedTinyAsciiStr<N>) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl<const N: usize> ULE for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> ULE for UnvalidatedTinyAsciiStr<N>
source§fn validate_byte_slice(bytes: &[u8]) -> Result<(), ZeroVecError>
fn validate_byte_slice(bytes: &[u8]) -> Result<(), ZeroVecError>
Validates a byte slice,
&[u8]
. Read moresource§fn parse_byte_slice(bytes: &[u8]) -> Result<&[Self], ZeroVecError>
fn parse_byte_slice(bytes: &[u8]) -> Result<&[Self], ZeroVecError>
source§unsafe fn from_byte_slice_unchecked(bytes: &[u8]) -> &[Self]
unsafe fn from_byte_slice_unchecked(bytes: &[u8]) -> &[Self]
Takes a byte slice,
&[u8]
, and return it as &[Self]
with the same lifetime, assuming
that this byte slice has previously been run through Self::parse_byte_slice()
with
success. Read moresource§impl<'a, const N: usize> ZeroMapKV<'a> for UnvalidatedTinyAsciiStr<N>
impl<'a, const N: usize> ZeroMapKV<'a> for UnvalidatedTinyAsciiStr<N>
§type Container = ZeroVec<'a, UnvalidatedTinyAsciiStr<N>>
type Container = ZeroVec<'a, UnvalidatedTinyAsciiStr<N>>
The container that can be used with this type:
ZeroVec
or VarZeroVec
.type Slice = ZeroSlice<UnvalidatedTinyAsciiStr<N>>
§type GetType = UnvalidatedTinyAsciiStr<N>
type GetType = UnvalidatedTinyAsciiStr<N>
The type produced by
Container::get()
Read more§type OwnedType = UnvalidatedTinyAsciiStr<N>
type OwnedType = UnvalidatedTinyAsciiStr<N>
The type produced by
Container::replace()
and Container::remove()
,
also used during deserialization. If Self
is human readable serialized,
deserializing to Self::OwnedType
should produce the same value once
passed through Self::owned_as_self()
Read moreimpl<const N: usize> Copy for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Eq for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> StructuralPartialEq for UnvalidatedTinyAsciiStr<N>
Auto Trait Implementations§
impl<const N: usize> Freeze for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> RefUnwindSafe for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Send for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Sync for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> Unpin for UnvalidatedTinyAsciiStr<N>
impl<const N: usize> UnwindSafe for UnvalidatedTinyAsciiStr<N>
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