Crate chrono_humanize

Source
Expand description

Representation for chrono objects in human languages

§Quick Start

HumanTime objects are created from chrono objects, such as chrono::DateTime and chrono::Duration

§Examples

Convert current time taken as Local::now() to HumanTime

let dt = chrono::Local::now();
let ht = chrono_humanize::HumanTime::from(dt);

assert_eq!("now", format!("{}", ht));
let dt = chrono::Local::now() - chrono::Duration::minutes(58);
let ht = chrono_humanize::HumanTime::from(dt);

assert_eq!("an hour ago", format!("{}", ht));

For full control over the text representation use HumanTime::to_text_en()

use chrono::Duration;
use chrono_humanize::{Accuracy, HumanTime, Tense};

let dt = Duration::days(45);
let ht = HumanTime::from(dt);

assert_eq!("a month", ht.to_text_en(Accuracy::Rough, Tense::Present));
assert_eq!("1 month, 2 weeks and 1 day", ht.to_text_en(Accuracy::Precise, Tense::Present));

Structs§

HumanTime
Duration wrapper that helps expressing the duration in human languages

Enums§

Accuracy
The accuracy of the representation
Tense
Indicates the time of the period in relation to the time of the utterance

Traits§

Humanize
Present the object in human friendly text form