[#BloombergLP-bsls-TimeInterval_RepTraits-k_IS_FLOAT] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsls.adoc[bsls]::xref:BloombergLP/bsls/TimeInterval_RepTraits.adoc[TimeInterval_RepTraits]::k_IS_FLOAT :relfileprefix: ../../../ :mrdocs: True if `REP` is a floating‐point type. == Synopsis Declared in `<bsls_timeinterval.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static bool const k_IS_FLOAT = std::is_floating_point<REP>::value || std::chrono::treat_as_floating_point<REP>::value; ---- == Description This compile time constant is `true` if the `REP` (template type argument) is indicated to be a floating point type by the underlying library. Otherwise, if the underlying library does not consider `REP` floating point anywhere (see note), `k_IS_FLOAT` is `false`. Note that to cover all scenarios we need to examine _two_ traits. The first one that tells if the representation type is a floating point (arithmetic) type or not (from `<type_traits>`), and another that tells that representation type is considered a floating point type from the `std::chrono` perspective. Formally the second one just duplicates the first one, but _in theory_ either can be specialized to be true, independently. Also note that conversions from `std::chrono::duration` with a floating point representation to `bsls::TimeInterval` are _not_ supported for now. [.small]#Created with https://www.mrdocs.com[MrDocs]#