dune-common 2.9.0
Loading...
Searching...
No Matches
Classes | Functions
Dune::Concept Namespace Reference

Namespace for concepts. More...

Classes

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

Functions

template<class C , class Tuple >
constexpr auto tupleEntriesModel () -> typename Impl::TupleEntriesModelHelper< C, Tuple >::Result
 
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>
constexpr 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>
constexpr 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>
constexpr bool Dune::Concept::requireConcept ( )
constexpr

◆ requireConcept() [2/2]

template<class C , class... T, typename std::enable_if< models< C, T... >(), int >::type = 0>
constexpr bool Dune::Concept::requireConcept ( T &&  ...)
constexpr

◆ requireConceptForTupleEntries()

template<class C , class Tuple , typename std::enable_if< tupleEntriesModel< C, Tuple >(), int >::type = 0>
constexpr 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>
constexpr 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>
constexpr 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>
constexpr bool Dune::Concept::requireSameType ( )
constexpr

◆ requireTrue()

template<bool b, typename std::enable_if< b, int >::type = 0>
constexpr bool Dune::Concept::requireTrue ( )
constexpr

◆ requireType()

template<typename T >
constexpr bool Dune::Concept::requireType ( )
constexpr

◆ tupleEntriesModel()

template<class C , class Tuple >
constexpr auto Dune::Concept::tupleEntriesModel ( ) -> typename Impl::TupleEntriesModelHelper<C, Tuple>::Result
constexpr