#[non_exhaustive]pub enum FormatItem<'a> {
Literal(&'a [u8]),
Component(Component),
Compound(&'a [BorrowedFormatItem<'a>]),
Optional(&'a BorrowedFormatItem<'a>),
First(&'a [BorrowedFormatItem<'a>]),
}
Expand description
A complete description of how to format and parse a type.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Literal(&'a [u8])
Bytes that are formatted as-is.
Note: These bytes should be UTF-8, but are not required to be. The value is passed
through String::from_utf8_lossy
when necessary.
Component(Component)
A minimal representation of a single non-literal item.
Compound(&'a [BorrowedFormatItem<'a>])
A series of literals or components that collectively form a partial or complete description.
Optional(&'a BorrowedFormatItem<'a>)
A FormatItem
that may or may not be present when parsing. If parsing fails, there
will be no effect on the resulting struct
.
This variant has no effect on formatting, as the value is guaranteed to be present.
First(&'a [BorrowedFormatItem<'a>])
A series of FormatItem
s where, when parsing, the first successful parse is used. When
formatting, the first element of the slice is used. An empty slice is a no-op when
formatting or parsing.
Trait Implementations§
source§impl<'a> Clone for BorrowedFormatItem<'a>
impl<'a> Clone for BorrowedFormatItem<'a>
source§fn clone(&self) -> BorrowedFormatItem<'a>
fn clone(&self) -> BorrowedFormatItem<'a>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for BorrowedFormatItem<'_>
impl Debug for BorrowedFormatItem<'_>
source§impl<'a> From<&'a [BorrowedFormatItem<'_>]> for BorrowedFormatItem<'a>
impl<'a> From<&'a [BorrowedFormatItem<'_>]> for BorrowedFormatItem<'a>
source§fn from(items: &'a [BorrowedFormatItem<'_>]) -> BorrowedFormatItem<'a>
fn from(items: &'a [BorrowedFormatItem<'_>]) -> BorrowedFormatItem<'a>
source§impl From<&BorrowedFormatItem<'_>> for OwnedFormatItem
impl From<&BorrowedFormatItem<'_>> for OwnedFormatItem
source§fn from(item: &BorrowedFormatItem<'_>) -> OwnedFormatItem
fn from(item: &BorrowedFormatItem<'_>) -> OwnedFormatItem
source§impl From<BorrowedFormatItem<'_>> for OwnedFormatItem
impl From<BorrowedFormatItem<'_>> for OwnedFormatItem
source§fn from(item: BorrowedFormatItem<'_>) -> OwnedFormatItem
fn from(item: BorrowedFormatItem<'_>) -> OwnedFormatItem
source§impl From<Component> for BorrowedFormatItem<'_>
impl From<Component> for BorrowedFormatItem<'_>
source§fn from(component: Component) -> BorrowedFormatItem<'_>
fn from(component: Component) -> BorrowedFormatItem<'_>
source§impl PartialEq<&[BorrowedFormatItem<'_>]> for BorrowedFormatItem<'_>
impl PartialEq<&[BorrowedFormatItem<'_>]> for BorrowedFormatItem<'_>
source§impl PartialEq<BorrowedFormatItem<'_>> for &[BorrowedFormatItem<'_>]
impl PartialEq<BorrowedFormatItem<'_>> for &[BorrowedFormatItem<'_>]
source§impl PartialEq<BorrowedFormatItem<'_>> for Component
impl PartialEq<BorrowedFormatItem<'_>> for Component
source§impl PartialEq<Component> for BorrowedFormatItem<'_>
impl PartialEq<Component> for BorrowedFormatItem<'_>
source§impl<'a> PartialEq for BorrowedFormatItem<'a>
impl<'a> PartialEq for BorrowedFormatItem<'a>
source§impl TryFrom<BorrowedFormatItem<'_>> for Component
impl TryFrom<BorrowedFormatItem<'_>> for Component
source§type Error = DifferentVariant
type Error = DifferentVariant
source§fn try_from(
value: BorrowedFormatItem<'_>,
) -> Result<Component, <Component as TryFrom<BorrowedFormatItem<'_>>>::Error>
fn try_from( value: BorrowedFormatItem<'_>, ) -> Result<Component, <Component as TryFrom<BorrowedFormatItem<'_>>>::Error>
source§impl<'a> TryFrom<BorrowedFormatItem<'a>> for &[BorrowedFormatItem<'a>]
impl<'a> TryFrom<BorrowedFormatItem<'a>> for &[BorrowedFormatItem<'a>]
source§type Error = DifferentVariant
type Error = DifferentVariant
source§fn try_from(
value: BorrowedFormatItem<'a>,
) -> Result<&[BorrowedFormatItem<'a>], <&[BorrowedFormatItem<'a>] as TryFrom<BorrowedFormatItem<'a>>>::Error>
fn try_from( value: BorrowedFormatItem<'a>, ) -> Result<&[BorrowedFormatItem<'a>], <&[BorrowedFormatItem<'a>] as TryFrom<BorrowedFormatItem<'a>>>::Error>
source§impl<'a> TryFrom<Item<'a>> for BorrowedFormatItem<'a>
impl<'a> TryFrom<Item<'a>> for BorrowedFormatItem<'a>
impl<'a> Eq for BorrowedFormatItem<'a>
impl Formattable for BorrowedFormatItem<'_>
impl Parsable for BorrowedFormatItem<'_>
impl<'a> StructuralPartialEq for BorrowedFormatItem<'a>
Auto Trait Implementations§
impl<'a> Freeze for BorrowedFormatItem<'a>
impl<'a> RefUnwindSafe for BorrowedFormatItem<'a>
impl<'a> Send for BorrowedFormatItem<'a>
impl<'a> Sync for BorrowedFormatItem<'a>
impl<'a> Unpin for BorrowedFormatItem<'a>
impl<'a> UnwindSafe for BorrowedFormatItem<'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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.