[#BloombergLP-bdlt-DatetimeUtil] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::DatetimeUtil :relfileprefix: ../../ :mrdocs: This utility `struct` provides a namespace for a suite of functions operating on objects of type `Datetime`. == Synopsis Declared in `<bdlt_datetimeutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- struct DatetimeUtil; ---- == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/DatetimeUtil/convertFromTm.adoc[`convertFromTm`] | Load into the specified `result` the value of the specified `timeStruct`. Return 0 on success, and a non‐zero value with no effect on `result` if `timeStruct` is invalid or otherwise cannot be represented as a `Datetime`. Values in fields `tm_wday`, `tm_yday`, and `tm_isdst` are ignored. The time 24:00:00 will be recognized, and leap seconds (i.e., values in `tm_sec` of 60 or 61) which can otherwise be represented as a `Datetime` will cause the conversion to succeed with the `result` "rolling over" into the zeroth second of next minute. Note that time zones are irrelevant for this conversion. | xref:BloombergLP/bdlt/DatetimeUtil/convertToTm-0a.adoc[`convertToTm`] | Return or load into the specified `result` the value of the specified `datetime` expressed as a `bsl::tm`. Each field in the result is set to its proper value except `tm_isdst`, which is set to `‐1` to indicate that no information on daylight saving time is available. A time value of 24:00:00:00 will be converted to 0:00:00. Note that time zones are irrelevant for this conversion. | xref:BloombergLP/bdlt/DatetimeUtil/fromYmdHms.adoc[`fromYmdHms`] | Return an `optional` having a `Datetime` with the specified `year`, `month`, `day`, `hour`, `minute`, `second`, and the optionally specified `millisecond` and `microsecond`, if those form a valid `Datetime` (see `Datetime::isValid`); otherwise return an `optional` without a value. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#