#duration #format-time #format #go

durationfmt

A Rust library to format std::time::Duration the same way Go does

2 releases

Uses old Rust 2015

0.1.1 Oct 21, 2017
0.1.0 Oct 21, 2017

#9 in #format-time

Download history 1/week @ 2023-12-04 43/week @ 2023-12-11 10/week @ 2023-12-18 7/week @ 2023-12-25 99/week @ 2024-01-15 3/week @ 2024-02-05 10/week @ 2024-02-12 36/week @ 2024-02-19 37/week @ 2024-02-26 15/week @ 2024-03-04 62/week @ 2024-03-11 24/week @ 2024-03-18

139 downloads per month
Used in 2 crates (via darklua)

MIT license

7KB
129 lines

durationfmt

A Rust library to format std::time::Duration the same way Go does.

This is almost a verbatim copy of the algorithm Go uses.

Usage

Add to your Cargo.toml file:

[dependencies]
durationfmt = { git = "https://github.com/kdar/durationfmt-rs", branch = "master"}

and this to your crate root:

extern crate durationfmt;

Example

extern crate durationfmt;

use std::time::Duration;

fn main() {
  let d = Duration::new(0, 0);
  println!("{}", durationfmt::to_string(d));
  // 0s
  let d = Duration::new(90, 0);
  println!("{}", durationfmt::to_string(d));
  // 1m30s
  let d = Duration::new(209, 1_000);
  println!("{}", durationfmt::to_string(d));
  // 3m29.000001s
}

No runtime deps