This crate exposes a number of features. These can be enabled or disabled as shown in Cargo’s documentation. Features are disabled by default unless otherwise noted.
Reliance on a given feature is always indicated alongside the item definition.
std(enabled by default, implicitly enables
This enables a number of features that depend on the standard library.
alloc(enabled by default via
Enables a number of features that require the ability to dynamically allocate memory.
Enables macros that provide compile-time verification of values and intuitive syntax.
Enables formatting of most structs.
Enables parsing of most structs.
This feature enables a number of methods that allow obtaining the system’s UTC offset.
By default, only years within the ±9999 range (inclusive) are supported. If you need support for years outside this range, consider enabling this feature; the supported range will be increased to ±999,999.
Note that enabling this feature has some costs, as it means forgoing some optimizations. Ambiguities may be introduced when parsing that would not otherwise exist.
If you are using this feature, please leave a comment on this discussion with your use case. If there is not sufficient demand for this feature, it will be dropped in a future release.
Allows serde representations to use a human-readable format. This is determined by the serializer, not the user. If this feature is not enabled or if the serializer requests a non-human-readable format, a format optimized for binary representation will be used.
Libraries should never enable this feature, as the decision of what format to use should be up to the user.
Enables support for serializing and deserializing well-known formats using serde’s
Enables rand support for all types.
Enables quickcheck support for all types except
One pseudo-feature flag that is only available to end users is the
As the name indicates, using the feature is unsound, and may cause unexpected segmentation
faults. Unlike other flags, this is deliberately
only available to end users; this is to ensure that a user doesn’t have unsound behavior without
knowing it. To enable this behavior, you must use
RUSTFLAGS="--cfg unsound_local_offset" cargo build or similar. Note: This flag is not tested anywhere, including in the regular test of
the powerset of all feature flags. Use at your own risk. Without this flag, any method that
requires the local offset will return the
Various error types returned by methods in the time crate.
Description of how types should be formatted and parsed.
Formatting for various types.
Macros to construct statically known values.
Parsing for various types.
Differential formats for serde.
Date in the proleptic Gregorian calendar.
A span of time with nanosecond precision.
A measurement of a monotonically non-decreasing clock. Opaque and useful only with
PrimitiveDateTime with a
Combined date and time.
The clock time within a given date. Nanosecond precision.
An offset from UTC.
An alias for
std::result::Result with a generic error from the time crate.