summaryrefslogtreecommitdiff
path: root/boost/histogram/detail/limits.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/histogram/detail/limits.hpp')
-rw-r--r--boost/histogram/detail/limits.hpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/boost/histogram/detail/limits.hpp b/boost/histogram/detail/limits.hpp
new file mode 100644
index 0000000000..23b8a6f1c5
--- /dev/null
+++ b/boost/histogram/detail/limits.hpp
@@ -0,0 +1,50 @@
+// Copyright 2015-2019 Hans Dembinski
+//
+// Distributed under the Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt
+// or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_HISTOGRAM_DETAIL_LIMITS_HPP
+#define BOOST_HISTOGRAM_DETAIL_LIMITS_HPP
+
+#include <limits>
+
+namespace boost {
+namespace histogram {
+namespace detail {
+
+template <typename T>
+constexpr T lowest() {
+ return std::numeric_limits<T>::lowest();
+}
+
+template <>
+constexpr double lowest() {
+ return -std::numeric_limits<double>::infinity();
+}
+
+template <>
+constexpr float lowest() {
+ return -std::numeric_limits<float>::infinity();
+}
+
+template <typename T>
+constexpr T highest() {
+ return std::numeric_limits<T>::max();
+}
+
+template <>
+constexpr double highest() {
+ return std::numeric_limits<double>::infinity();
+}
+
+template <>
+constexpr float highest() {
+ return std::numeric_limits<float>::infinity();
+}
+
+} // namespace detail
+} // namespace histogram
+} // namespace boost
+
+#endif