SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
traits.hpp File Reference

Compile-time traits for fields and terms, used to extract types and properties from template parameters. More...

#include <type_traits>
#include "serif/discretization/blocks/concepts.hpp"
Include dependency graph for traits.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  serif::discretization::blocks::SpatialTermTraits< TermT >
 Helper struct representing the traits of some spatial term type, including its functional space, support, family, order, and rank. More...
 

Namespaces

namespace  serif
 
namespace  serif::discretization
 
namespace  serif::discretization::blocks
 

Concepts

concept  serif::discretization::blocks::ScalarTraceTerm
 A unique scalar boundary value is available for continuous scalar fields and scalar globals.
 

Typedefs

template<HasFunctionalSpace TermT>
using serif::discretization::blocks::FunctionalSpaceOf = std::remove_cvref_t<TermT>::FunctionalSpace
 Extract the functional space type associated with a given term type. Will have a type of whatever TermT::FunctionalSpace is.
 
template<HasSupport TermT>
using serif::discretization::blocks::SupportOf = std::remove_cvref_t<TermT>::Support
 Extract the support type associated with a given term type. Will have a type of whatever TermT::Support is.
 
template<HasQuantity TermT>
using serif::discretization::blocks::QuantityOf = std::remove_cvref_t<TermT>::Quantity
 Extract the quantity type associated with a given term type. Will have a type of whatever TermT::Quantity is.
 

Detailed Description

Compile-time traits for fields and terms, used to extract types and properties from template parameters.

Author
Emily M. Boudreaux