icu_datetime/provider/pattern/item/
mod.rs1mod generic;
6mod ule;
7
8use crate::provider::fields::{Field, FieldLength, FieldSymbol};
9pub use generic::GenericPatternItem;
10
11#[derive(Debug, PartialEq, Eq, Clone, Copy)]
19#[cfg_attr(feature = "datagen", derive(serde::Serialize, databake::Bake))]
20#[cfg_attr(feature = "datagen", databake(path = icu_datetime::provider::pattern::item))]
21#[cfg_attr(feature = "serde", derive(serde::Deserialize))]
22#[allow(clippy::exhaustive_enums)] pub enum PatternItem {
24 Field(Field),
26 Literal(char),
28}
29
30impl From<(FieldSymbol, FieldLength)> for PatternItem {
31 fn from(input: (FieldSymbol, FieldLength)) -> Self {
32 Self::Field(Field {
33 symbol: input.0,
34 length: input.1,
35 })
36 }
37}
38
39impl From<char> for PatternItem {
40 fn from(input: char) -> Self {
41 Self::Literal(input)
42 }
43}