Loading...
Searching...
No Matches
Dune::Concept Namespace Reference
Common » Utilities » C++ concepts

Namespace for concepts. More...

## Classes

struct | Refines
| Base class for refined concepts. More...
struct | HasFixedSize

## Concepts

concept | Number
| The Number concept is satisfied if the type N can act as a scalar in the context of (hierarchically blocked) containers.

## Functions

template<class C, class Tuple>
constexpr auto | tupleEntriesModel ()
template<bool b, typename std::enable_if< b, int >::type = 0>
constexpr bool | requireTrue ()
template<class C, class... T, typename std::enable_if< models< C, T... >(), int >::type = 0>
constexpr bool | requireConcept ()
template<class C, class... T, typename std::enable_if< models< C, T... >(), int >::type = 0>
constexpr bool | requireConcept (T &&...)
template<class C, class Tuple, typename std::enable_if< tupleEntriesModel< C, Tuple >(), int >::type = 0>
constexpr bool | requireConceptForTupleEntries ()
template<class From, class To, typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0>
constexpr bool | requireConvertible ()
template<class To, class From, typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0>
constexpr bool | requireConvertible (const From &)
template<typename T>
constexpr bool | requireType ()
template<class Base, class Derived, typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0>
constexpr bool | requireBaseOf ()
template<class Base, class Derived, typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0>
constexpr bool | requireBaseOf (const Derived &)
template<class A, class B, typename std::enable_if< std::is_same< A, B >::value, int >::type = 0>
constexpr bool | requireSameType ()

## Detailed Description

Namespace for concepts.

This namespace contains helper functions for concept definitions and the concept definitions themselves.

## Function Documentation

## requireBaseOf() [1/2]

template<class Base, class Derived, typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0>

bool Dune::Concept::requireBaseOf | ( |  | ) |

constexpr

## requireBaseOf() [2/2]

template<class Base, class Derived, typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0>

bool Dune::Concept::requireBaseOf | ( | const Derived & |  | ) |

constexpr

## requireConcept() [1/2]

template<class C, class... T, typename std::enable_if< models< C, T... >(), int >::type = 0>

bool Dune::Concept::requireConcept | ( |  | ) |

constexpr

## requireConcept() [2/2]

template<class C, class... T, typename std::enable_if< models< C, T... >(), int >::type = 0>

bool Dune::Concept::requireConcept | ( | T && | ... | ) |

constexpr

## requireConceptForTupleEntries()

template<class C, class Tuple, typename std::enable_if< tupleEntriesModel< C, Tuple >(), int >::type = 0>

bool Dune::Concept::requireConceptForTupleEntries | ( |  | ) |

constexpr

## requireConvertible() [1/2]

template<class From, class To, typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0>

bool Dune::Concept::requireConvertible | ( |  | ) |

constexpr

## requireConvertible() [2/2]

template<class To, class From, typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0>

bool Dune::Concept::requireConvertible | ( | const From & |  | ) |

constexpr

## requireSameType()

template<class A, class B, typename std::enable_if< std::is_same< A, B >::value, int >::type = 0>

bool Dune::Concept::requireSameType | ( |  | ) |

constexpr

## requireTrue()

template<bool b, typename std::enable_if< b, int >::type = 0>

bool Dune::Concept::requireTrue | ( |  | ) |

constexpr

## requireType()

template<typename T>

bool Dune::Concept::requireType | ( |  | ) |

constexpr

## tupleEntriesModel()

template<class C, class Tuple>

auto Dune::Concept::tupleEntriesModel | ( |  | ) |

constexpr