use super::format::Format;
use super::formatter::Item;
use crate::parser::Token;
pub const ISO8601: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some('T'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: Some('.'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Subsecond,
sep_char: Some(' '),
optional: false,
second_sep_char: None,
}),
Some(Item {
token: Token::Timescale,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 8,
};
pub const ISO8601_FLEX: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some('T'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: Some('.'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Subsecond,
sep_char: Some(' '),
second_sep_char: None,
optional: true,
}),
Some(Item {
token: Token::Timescale,
sep_char: None,
second_sep_char: None,
optional: true,
}),
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 8,
};
pub const RFC3339: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some('T'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: Some('.'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Subsecond,
sep_char: None,
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::OffsetHours,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 8,
};
pub const RFC3339_FLEX: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some('T'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: Some('.'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Subsecond,
sep_char: None,
second_sep_char: None,
optional: true,
}),
Some(Item {
token: Token::OffsetHours,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 8,
};
pub const ISO8601_DATE: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 3,
};
pub const ISO8601_ORDINAL: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::DayOfYearInteger,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 2,
};
pub const RFC2822: Format = Format {
items: [
Some(Item {
token: Token::WeekdayShort,
sep_char: Some(','),
second_sep_char: Some(' '),
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::MonthNameShort,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Year,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 7,
};
pub const RFC2822_LONG: Format = Format {
items: [
Some(Item {
token: Token::Weekday,
sep_char: Some(','),
second_sep_char: Some(' '),
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::MonthName,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Year,
sep_char: Some(' '),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: None,
second_sep_char: None,
optional: false,
}),
None,
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 7,
};
pub const ISO8601_STD: Format = Format {
items: [
Some(Item {
token: Token::Year,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Month,
sep_char: Some('-'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Day,
sep_char: Some('T'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Hour,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Minute,
sep_char: Some(':'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Second,
sep_char: Some('.'),
second_sep_char: None,
optional: false,
}),
Some(Item {
token: Token::Subsecond,
sep_char: Some(' '),
optional: false,
second_sep_char: None,
}),
None,
None,
None,
None,
None,
None,
None,
None,
None,
],
num_items: 7,
};