datetime-rs

Crates.iodatetime-rs
lib.rsdatetime-rs
version1.0.0
sourcesrc
created_at2024-04-10 19:48:04.626808
updated_at2024-05-16 16:53:58.312358
descriptionDate and time
homepage
repositoryhttps://github.com/lukesneeringer/datetime-rs
max_upload_size
id1203930
size36,103
Luke Sneeringer (lukesneeringer)

documentation

https://docs.rs/datetime_rs

README

Date & Time

ci codecov release docs

The datetime crate provides a simple, easy-to-use DateTime struct (and corresponding macro). DateTime provides storage for a date and time, and optionally a time zone (if the tz feature is enabled).

The underlying storage is a Unix timestamp, so DateTime objects are comparable (even when in different time zones). Additonally, if you don't need the concept of time zones (e.g. because you can assume one), you can leave the tz feature off and not take the baggage.

A DateTime with no time zone specified behaves identically to UTC.

Examples

Making a DateTime:

use datetime::DateTime;

let dt = DateTime::ymd(2012, 4, 21).hms(11, 0, 0).build();

You can also use the datetime! macro to get a syntax resembling a date literal:

use datetime::datetime;

let dt = datetime! { 2012-04-21 11:00:00 };

Features

datetime-rs ships with the following features:

  • diesel-pg: Enables interop with PostgreSQL TIMESTAMP columns using Diesel.
  • serde: Enables serialization and desearialization with serde. (Enabled by default.)
  • tz: Enables support for time-zone-aware date construction.
Commit count: 14

cargo fmt