#[non_exhaustive]pub enum FormatDescriptionV3Inner<'a> {
Component(Component),
BorrowedLiteral(&'a str),
BorrowedCompound(&'a [Self]),
BorrowedOptional {
format: bool,
item: &'a Self,
},
BorrowedFirst(&'a [Self]),
OwnedLiteral(Box<str>),
OwnedCompound(Box<[Self]>),
OwnedOptional {
format: bool,
item: Box<Self>,
},
OwnedFirst(Box<[Self]>),
}formatting or parsing only.Expand description
The inner enum of a version 3 format description. Controls all business logic.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Component(Component)
A minimal representation of a single non-literal item.
BorrowedLiteral(&'a str)
A string that is formatted as-is.
BorrowedCompound(&'a [Self])
A series of literals or components that collectively form a partial or complete description.
BorrowedOptional
An item that may or may not be present when parsing. If parsing fails, there will be no
effect on the resulting struct.
BorrowedFirst(&'a [Self])
A series of items where, when parsing, the first successful parse is used. When formatting, the first item is used. If no items are present, both formatting and parsing are no-ops.
OwnedLiteral(Box<str>)
alloc only.A string that is formatted as-is.
OwnedCompound(Box<[Self]>)
alloc only.A series of literals or components that collectively form a partial or complete description.
OwnedOptional
alloc only.An item that may or may not be present when parsing. If parsing fails, there will be no
effect on the resulting struct.
OwnedFirst(Box<[Self]>)
alloc only.A series of items where, when parsing, the first successful parse is used. When formatting, the first item is used. If no items are present, both formatting and parsing are no-ops.
Implementations§
Source§impl<'a> FormatDescriptionV3Inner<'a>
impl<'a> FormatDescriptionV3Inner<'a>
Sourcefn to_owned(&self) -> FormatDescriptionV3Inner<'static>
Available on crate feature alloc only.
fn to_owned(&self) -> FormatDescriptionV3Inner<'static>
alloc only.Convert the format description to an owned version, enabling it to be stored without regard for lifetime.
Sourcepub const fn into_opaque(self) -> FormatDescriptionV3<'a> ⓘ
pub const fn into_opaque(self) -> FormatDescriptionV3<'a> ⓘ
Convert the inner enum to a FormatDescriptionV3.
Sourceconst fn max_bytes_needed(&self) -> usize
Available on crate feature formatting only.
const fn max_bytes_needed(&self) -> usize
formatting only.Obtain the maximum number of bytes that are needed to format any value using this format description.
Trait Implementations§
Source§impl<'a> Clone for FormatDescriptionV3Inner<'a>
impl<'a> Clone for FormatDescriptionV3Inner<'a>
Source§fn clone(&self) -> FormatDescriptionV3Inner<'a>
fn clone(&self) -> FormatDescriptionV3Inner<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ComputeMetadata for FormatDescriptionV3Inner<'_>
Available on crate feature formatting only.
impl ComputeMetadata for FormatDescriptionV3Inner<'_>
formatting only.Source§fn compute_metadata(&self) -> Metadata
fn compute_metadata(&self) -> Metadata
Source§impl Debug for FormatDescriptionV3Inner<'_>
impl Debug for FormatDescriptionV3Inner<'_>
Source§impl Sealed for FormatDescriptionV3Inner<'_>
Available on crate feature formatting only.
impl Sealed for FormatDescriptionV3Inner<'_>
formatting only.Auto Trait Implementations§
impl<'a> Freeze for FormatDescriptionV3Inner<'a>
impl<'a> RefUnwindSafe for FormatDescriptionV3Inner<'a>
impl<'a> Send for FormatDescriptionV3Inner<'a>
impl<'a> Sync for FormatDescriptionV3Inner<'a>
impl<'a> Unpin for FormatDescriptionV3Inner<'a>
impl<'a> UnsafeUnpin for FormatDescriptionV3Inner<'a>
impl<'a> UnwindSafe for FormatDescriptionV3Inner<'a>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
ptr_alignment_type)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
sized_type_properties)[Self]. Read more