Module icu::datetime[][src]

Date and Time operations

This API provides necessary functionality for formatting date and time to user readable textual representation.

DateTimeFormat is the main structure of the component. It accepts a set of arguments which allow it to collect necessary data from the DataProvider, and once instantiated, can be used to quickly format any date and time provided.

Examples

use icu::locid::Locale;
use icu::locid::macros::langid;
use icu::datetime::{DateTimeFormat, mock::datetime::MockDateTime, options::length};

let provider = icu_testdata::get_provider();

let locale: Locale = langid!("en").into();

let options = length::Bag {
    date: Some(length::Date::Medium),
    time: Some(length::Time::Short),
    ..Default::default()
}.into();

let dtf = DateTimeFormat::try_new(locale, &provider, &options)
    .expect("Failed to create DateTimeFormat instance.");

let date: MockDateTime = "2020-09-12T12:35:00".parse()
    .expect("Failed to parse date.");

let formatted_date = dtf.format(&date);
assert_eq!(formatted_date.to_string(), "Sep 12, 2020, 12:35 PM");

Modules

date
datetime
mock
options

DateTimeFormatOptions is a bag of options which, together with Locale, defines how dates will be formatted with a DateTimeFormat instance.

provider

Data provider struct definitions for this ICU4X component.

zoned_datetime

Structs

DateTimeFormat

DateTimeFormat is the main structure of the icu_datetime component. When constructed, it uses data from the [DataProvider], selected Locale and provided options to collect all data necessary to format any dates into that locale.

FormattedDateTime

FormattedDateTime is a intermediate structure which can be retrieved as an output from DateTimeFormat.

FormattedZonedDateTime
ZonedDateTimeFormat

The composition of DateTimeFormat and TimeZoneFormat.

Enums

DateTimeFormatError

A list of possible error outcomes for the DateTimeFormat struct.

DateTimeFormatOptions

A bag of options which, together with Locale, defines how dates will be formatted with a DateTimeFormat instance.