dune-common 2.9.0
|
Infrastructure for concepts. More...
#include <type_traits>
#include <utility>
#include <tuple>
#include <dune/common/typeutilities.hh>
#include <dune/common/typelist.hh>
#include <dune/common/tupleutility.hh>
#include <dune/common/std/type_traits.hh>
Go to the source code of this file.
Classes | |
struct | Dune::Concept::Refines< BaseConcepts > |
Base class for refined concepts. More... | |
Namespaces | |
namespace | Dune |
Dune namespace. | |
namespace | Dune::Concept |
Namespace for concepts. | |
Functions | |
template<class C , class... T> | |
constexpr auto | Dune::models () |
Check if concept is modeled by given types. | |
template<class C , class Tuple > | |
constexpr auto | Dune::Concept::tupleEntriesModel () -> typename Impl::TupleEntriesModelHelper< C, Tuple >::Result |
template<bool b, typename std::enable_if< b, int >::type = 0> | |
constexpr bool | Dune::Concept::requireTrue () |
template<class C , class... T, typename std::enable_if< models< C, T... >(), int >::type = 0> | |
constexpr bool | Dune::Concept::requireConcept () |
template<class C , class... T, typename std::enable_if< models< C, T... >(), int >::type = 0> | |
constexpr bool | Dune::Concept::requireConcept (T &&...) |
template<class C , class Tuple , typename std::enable_if< tupleEntriesModel< C, Tuple >(), int >::type = 0> | |
constexpr bool | Dune::Concept::requireConceptForTupleEntries () |
template<class From , class To , typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0> | |
constexpr bool | Dune::Concept::requireConvertible () |
template<class To , class From , typename std::enable_if< std::is_convertible< From, To >::value, int >::type = 0> | |
constexpr bool | Dune::Concept::requireConvertible (const From &) |
template<typename T > | |
constexpr bool | Dune::Concept::requireType () |
template<class Base , class Derived , typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0> | |
constexpr bool | Dune::Concept::requireBaseOf () |
template<class Base , class Derived , typename std::enable_if< std::is_base_of< Base, Derived >::value, int >::type = 0> | |
constexpr bool | Dune::Concept::requireBaseOf (const Derived &) |
template<class A , class B , typename std::enable_if< std::is_same< A, B >::value, int >::type = 0> | |
constexpr bool | Dune::Concept::requireSameType () |
Infrastructure for concepts.