integral.h File Reference
`#include <utl/core/impl.h>`
`#include <type_traits>`
`#include <utility>`

Go to the source code of this file.

## Classes

struct | utl::meta::nil_

## Namespaces

| utl
| STL's core language concepts.
| utl::meta

## Typedefs

template<typename Tp >
using | utl::meta::eval = typename Tp::type
| Type alias for `Tp::type`. Used to evaluate/extract return type of metafunctions. More...
using | utl::meta::Npos = size_< index_t(-1)>
| The last position we can express for indexing. More...
template<typename Tp , Tp v>
using | utl::meta::integral_ = std::integral_constant< Tp, v >
template<bool v>
using | utl::meta::bool_ = integral_< bool, v >
| bool_ type: integral constant wrapper for bool More...
using | utl::meta::true_ = bool_< true >
| The type used as a compile-time boolean with true value. More...
using | utl::meta::false_ = bool_< false >
| The type used as a compile-time boolean with false value. More...
template<int8_t v>
using | utl::meta::int8_ = integral_< int8_t, v >
| int8_ type: integral constant wrapper for `int8_t` More...
template<uint8_t v>
using | utl::meta::uint8_ = integral_< uint8_t, v >
| uint8_ type: integral constant wrapper for `uint8_t` More...
template<int16_t v>
using | utl::meta::int16_ = integral_< int16_t, v >
| int16_ type: integral constant wrapper for `int16_t` More...
template<uint16_t v>
using | utl::meta::uint16_ = integral_< uint16_t, v >
| uint16_ type: integral constant wrapper for `uint16_t` More...
template<int32_t v>
using | utl::meta::int32_ = integral_< int32_t, v >
| int32_ type: integral constant wrapper for `int32_t` More...
template<uint32_t v>
using | utl::meta::uint32_ = integral_< uint32_t, v >
| uint32_ type: integral constant wrapper for `uint32_t` More...
template<char v>
using | utl::meta::char_ = integral_< char, v >
| char_ type: integral constant wrapper for `char` More...
template<int v>
using | utl::meta::int_ = integral_< int, v >
| int_ type: integral constant wrapper for `int` More...
template<long v>
using | utl::meta::long_ = integral_< long, v >
| long_ type: integral constant wrapper for `long` More...
template<index_t v>
using | utl::meta::index_ = integral_< index_t, v >
| index_ type: integral constant wrapper for `index_t` a.k.a std::size_t More...
template<size_t v>
using | utl::meta::size_ = integral_< size_t, v >
| size_ type: integral constant wrapper for `size_t` a.k.a std::size_t More...
template<typename Tp >
using | utl::meta::sizeof_ = size_< sizeof(Tp)>
template<typename Tp >
using | utl::meta::alignof_ = size_< alignof(Tp)>
template<class Tp , Tp... Ints>
using | utl::meta::integer_sequence = std::integer_sequence< Tp, Ints... >
template<typename Tp , Tp Num>
using | utl::meta::make_integer_sequence = std::make_integer_sequence< Tp, Num >
template<index_t... Idx>
using | utl::meta::index_sequence = integer_sequence< index_t, Idx... >
| Alias template index_sequence. More...
template<index_t Num>
using | utl::meta::make_index_sequence = make_integer_sequence< index_t, Num >
| Alias template make_index_sequence. More...
template<typename... Types>
using | utl::meta::index_sequence_for = make_index_sequence< sizeof...(Types)>
| Alias template index_sequence_for. More...