[][src]Module icu::datetime

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::macros::langid;
use icu::datetime::{DateTimeFormat, date::MockDateTime, options::style};

let provider = icu_testdata::get_provider();

let lid = langid!("en");

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

let dtf = DateTimeFormat::try_new(lid, &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

APIs for Date and Time handling

options

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

Structs

DateTimeFormat

DateTimeFormat is the main structure of the icu_datetime component. When constructed, it uses data from the DataProvider, selected LanguageIdentifier 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.

Enums

DateTimeFormatError

A list of possible error outcomes for the DateTimeFormat struct.

DateTimeFormatOptions

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