DUNE-ACFEM (unstable)

expressiontraits.hh File Reference

Traits-class in order to deduce properties from expressions. More...

#include "../common/types.hh"
#include "policy.hh"
#include "sign.hh"
+ Include dependency graph for expressiontraits.hh:

Go to the source code of this file.

Classes

struct  Dune::ACFem::ExpressionTraits< T, SFINAE, Priority >
 Default expression traits definition is a recursion in order to ease disambiguation. More...
 
struct  Dune::ACFem::ExpressionTraits< T, void, DefaultTraitsLevel >
 A traits class in order to collect properties of expressions. More...
 
struct  Dune::ACFem::ExpressionTraits< T, std::enable_if_t<!IsDecay< T >::value >, DecayTraitsLevel >
 Forward to the traits class for the decay type. More...
 
struct  Dune::ACFem::ZeroExpressionTraits< T >
 ExpressionTraits for any zero-expression. More...
 

Namespaces

 Dune::ACFem
 A namespace encapsulating everything defined in our dune-acfem project.
 

Typedefs

template<class T >
using Dune::ACFem::IsTypedValue = BoolConstant< ExpressionTraits< T >::isTypedValue >
 Compile-time true if T is a "typed value", e.g. a std::integral_constant.
 
template<class T >
using Dune::ACFem::IsTypedValueReference = BoolConstant< std::is_reference< T >::value &&IsTypedValue< T >::value >
 Compile-time true if T is a reference to a "typed value".
 

Functions

SignComparisons

Some constexpr operators to support symbolic notations.

template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator<= (const Expression &, Constant< Int, I >)
 
template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator>= (const Expression &, Constant< Int, I >)
 
template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator< (const Expression &, Constant< Int, I >)
 
template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator> (const Expression &, Constant< Int, I >)
 
template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator== (const Expression &, Constant< Int, I >)
 
template<class Expression , class Int , Int I>
constexpr std::enable_if_t< OwnsExpressionTraits< Expression >::value, bool > Dune::ACFem::operator!= (const Expression &, Constant< Int, I >)
 
template<class T >
constexpr auto Dune::ACFem::expressionTraits ()
 
template<class T >
constexpr auto Dune::ACFem::expressionTraits (T &&)
 

Detailed Description

Traits-class in order to deduce properties from expressions.

Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 8, 22:30, 2024)