pub enum Time {
Expand description

Represents different length lengths a DateTimeInput implementer can be formatted into. Each length has associated best pattern for it for a given locale.


use icu::datetime::options::length;

let bag = length::Bag::from_time_style(length::Time::Medium);

The available lengths correspond to UTS #35: Unicode LDML 4. Dates, section 2.4 [Element timeFormats].

Note: The exact result returned from TypedDateTimeFormatter is a subject to change over time. Formatted result should be treated as opaque and displayed to the user as-is, and it is strongly recommended to never write tests that expect a particular formatted output.

Variants (Non-exhaustive)

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.


Full length, with spelled out time zone name.


  • 8:25:07 AM Pacific Standard Time (en-US)
  • 08:25:07 czas pacyficzny standardowy (pl)
  • ٨:٢٥:٠٧ ص توقيت المحيط الهادي الرسمي (ar)
  • 08:25:07 Тихоокеанское стандартное время (ru)
  • 8時25分07秒 アメリカ太平洋標準時 (ja)


Full length, usually with short time-zone code.


  • 8:25:07 AM PST (en-US)
  • 08:25:07 GMT-8 (pl)
  • ٨:٢٥:٠٧ ص غرينتش-٨ (ar)
  • 08:25:07 GMT-8 (ru)
  • 8:25:07 GMT-8 (ja)


Full length, usually with seconds.


  • 8:25:07 AM (en-US)
  • 08:25:07 (pl)
  • ٨:٢٥:٠٧ ص (ar)
  • 08:25:07 (ru)
  • 8:25:07 (ja)


Full length, usually without seconds.


  • 8:25 AM (en-US)
  • 08:25 (pl)
  • ٨:٢٥ ص (ar)
  • 08:25 (ru)
  • 8:25 (ja)

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.