Loading...
Searching...
No Matches
Dune::Indices Namespace Reference
Common

Namespace with predefined compile time indices for the range [0,19]. More...

## Namespaces

namespace | Literals

## Functions

template<char... digits>
constexpr auto | operator""_ic ()
| Literal to create an index compile-time constant.
template<char... digits>
constexpr auto | operator""_uc ()
| Literal to create an unsigned integer compile-time constant.
template<char... digits>
constexpr auto | operator""_sc ()
| Literal to create a signed integer compile-time constant.
template<class T, T value>
constexpr auto | operator- (std::integral_constant< T, value >)
| Negation operator for integral constants.

## Variables

constexpr index_constant< 0 > | _0 = {}
| Compile time index with value 0.
constexpr index_constant< 1 > | _1 = {}
| Compile time index with value 1.
constexpr index_constant< 2 > | _2 = {}
| Compile time index with value 2.
constexpr index_constant< 3 > | _3 = {}
| Compile time index with value 3.
constexpr index_constant< 4 > | _4 = {}
| Compile time index with value 4.
constexpr index_constant< 5 > | _5 = {}
| Compile time index with value 5.
constexpr index_constant< 6 > | _6 = {}
| Compile time index with value 6.
constexpr index_constant< 7 > | _7 = {}
| Compile time index with value 7.
constexpr index_constant< 8 > | _8 = {}
| Compile time index with value 8.
constexpr index_constant< 9 > | _9 = {}
| Compile time index with value 9.
constexpr index_constant< 10 > | _10 = {}
| Compile time index with value 10.
constexpr index_constant< 11 > | _11 = {}
| Compile time index with value 11.
constexpr index_constant< 12 > | _12 = {}
| Compile time index with value 12.
constexpr index_constant< 13 > | _13 = {}
| Compile time index with value 13.
constexpr index_constant< 14 > | _14 = {}
| Compile time index with value 14.
constexpr index_constant< 15 > | _15 = {}
| Compile time index with value 15.
constexpr index_constant< 16 > | _16 = {}
| Compile time index with value 16.
constexpr index_constant< 17 > | _17 = {}
| Compile time index with value 17.
constexpr index_constant< 18 > | _18 = {}
| Compile time index with value 18.
constexpr index_constant< 19 > | _19 = {}
| Compile time index with value 19.

## Detailed Description

Namespace with predefined compile time indices for the range [0,19].

The predefined index objects in this namespace are constexpr, which allows them to be used in situations where a compile time constant is needed, e.g. for a template parameter. Apart from that, constexpr implies internal linkage, which helps to avoid ODR problems.

The constants implicitly convert to their contained value, so you can for example write

std::array<int,_10> a;
// the above line is equivalent to
std::array<int,10> b;