dune-pdelab  2.4.1
Functions
Dune::PDELab::Concept::Imp Namespace Reference

Functions

template<class C , class... T, decltype(std::declval< C >().require(std::declval< T >()...), 0) = 0>
constexpr std::true_type matchesRequirement (PriorityTag< 1 >)
 
template<class C , class... T>
constexpr std::false_type matchesRequirement (PriorityTag< 0 >)
 
template<class... T>
constexpr bool modelsConceptList (TypeList<>)
 
template<class... T, class C0 , class... CC>
constexpr bool modelsConceptList (TypeList< C0, CC... >)
 
template<class C , class... T>
constexpr bool modelsConcept (PriorityTag< 0 >)
 
template<class C , class... T, decltype(typename C::BaseConceptList(), 0) = 0>
constexpr bool modelsConcept (PriorityTag< 1 >)
 
template<class C , class First >
constexpr auto allModel () -> std::integral_constant< bool, models< C, First >()>
 
template<class C , class First , class... Other>
constexpr auto allModel () -> std::integral_constant< bool, models< C, First >() and allModel< C, Other... >()>
 
template<class C , class... T>
constexpr auto tupleEntriesModel (const std::tuple< T... > &) -> decltype(allModel< C, T... >())
 

Function Documentation

template<class C , class First >
constexpr auto Dune::PDELab::Concept::Imp::allModel ( ) -> std::integral_constant<bool, models<C, First>()>
template<class C , class First , class... Other>
constexpr auto Dune::PDELab::Concept::Imp::allModel ( ) -> std::integral_constant<bool, models<C, First>() and allModel<C, Other...>()>
template<class C , class... T, decltype(std::declval< C >().require(std::declval< T >()...), 0) = 0>
constexpr std::true_type Dune::PDELab::Concept::Imp::matchesRequirement ( PriorityTag< 1 >  )
template<class C , class... T>
constexpr std::false_type Dune::PDELab::Concept::Imp::matchesRequirement ( PriorityTag< 0 >  )

Referenced by modelsConcept().

template<class C , class... T>
constexpr bool Dune::PDELab::Concept::Imp::modelsConcept ( PriorityTag< 0 >  )

References matchesRequirement().

Referenced by Dune::PDELab::models().

template<class C , class... T, decltype(typename C::BaseConceptList(), 0) = 0>
constexpr bool Dune::PDELab::Concept::Imp::modelsConcept ( PriorityTag< 1 >  )
template<class... T>
constexpr bool Dune::PDELab::Concept::Imp::modelsConceptList ( TypeList<>  )
template<class... T, class C0 , class... CC>
constexpr bool Dune::PDELab::Concept::Imp::modelsConceptList ( TypeList< C0, CC... >  )

References Dune::PDELab::models().

Referenced by modelsConcept().

template<class C , class... T>
constexpr auto Dune::PDELab::Concept::Imp::tupleEntriesModel ( const std::tuple< T... > &  ) -> decltype(allModel<C, T...>())