// 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) #include #include #include #include #include #include #include #include #include #include "utility_meta.hpp" using namespace boost::histogram; using namespace boost::histogram::literals; int main() { BOOST_TEST_EQ(detail::cat("foo", 1, "bar"), "foo1bar"); // literals { BOOST_TEST_TRAIT_SAME(std::integral_constant, decltype(0_c)); BOOST_TEST_TRAIT_SAME(std::integral_constant, decltype(3_c)); BOOST_TEST_EQ(decltype(10_c)::value, 10); BOOST_TEST_EQ(decltype(213_c)::value, 213); } // common_storage { BOOST_TEST_TRAIT_SAME( detail::common_storage, unlimited_storage<>>, unlimited_storage<>); BOOST_TEST_TRAIT_SAME( detail::common_storage, dense_storage>, dense_storage); BOOST_TEST_TRAIT_SAME( detail::common_storage, dense_storage>, dense_storage); BOOST_TEST_TRAIT_SAME( detail::common_storage, dense_storage>, dense_storage); BOOST_TEST_TRAIT_SAME( detail::common_storage, unlimited_storage<>>, dense_storage); BOOST_TEST_TRAIT_SAME(detail::common_storage, unlimited_storage<>>, unlimited_storage<>); BOOST_TEST_TRAIT_SAME(detail::common_storage, weight_storage>, weight_storage); } return boost::report_errors(); }