Boost.Hana  1.7.0
Your standard library for metaprogramming
boost::mpl::integral_c< T, v > Struct Template Reference

Description

template<typename T, T v>
struct boost::mpl::integral_c< T, v >

Adapter for IntegralConstants from the Boost.MPL.

Provided models

  1. Constant and IntegralConstant
    A Boost.MPL IntegralConstant is a model of the IntegralConstant and Constant concepts just like hana::integral_constants are. As a consequence, they are also implicitly a model of the concepts provided for all models of Constant.
    // Copyright Louis Dionne 2013-2017
    // Distributed under the Boost Software License, Version 1.0.
    // (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
    #include <boost/mpl/int.hpp>
    #include <boost/mpl/long.hpp>
    namespace hana = boost::hana;
    namespace mpl = boost::mpl;
    static_assert(hana::value(mpl::integral_c<int, 3>{}) == 3, "");
    static_assert(mpl::integral_c<int, 3>::value == 3, "");
    BOOST_HANA_CONSTANT_CHECK(hana::equal(mpl::integral_c<int, 3>{}, mpl::int_<3>{}));
    BOOST_HANA_CONSTANT_CHECK(hana::equal(mpl::integral_c<int, 3>{}, mpl::long_<3>{}));
    BOOST_HANA_CONSTANT_CHECK(hana::not_equal(mpl::integral_c<int, 3>{}, mpl::int_<0>{}));
    int main() { }
equal.hpp
Defines boost::hana::equal.
BOOST_HANA_CONSTANT_CHECK
#define BOOST_HANA_CONSTANT_CHECK(...)
Equivalent to BOOST_HANA_CONSTANT_ASSERT, but not influenced by the BOOST_HANA_CONFIG_DISABLE_ASSERTI...
Definition: assert.hpp:239
boost::hana::value
constexpr auto value
Return the compile-time value associated to a constant.
Definition: value.hpp:54
boost::hana
Namespace containing everything in the library.
Definition: accessors.hpp:20
assert.hpp
Defines macros to perform different kinds of assertions.
not_equal.hpp
Defines boost::hana::not_equal.
integral_c.hpp
Adapts Boost.MPL IntegralConstants for use with Hana.
boost::hana::not_equal
constexpr auto not_equal
Returns a Logical representing whether x is not equal to y.
Definition: not_equal.hpp:54
boost::hana::equal
constexpr auto equal
Returns a Logical representing whether x is equal to y.
Definition: equal.hpp:64