diff --git a/dune/solvers/common/CMakeLists.txt b/dune/solvers/common/CMakeLists.txt index 506ce71ae473a3c286b26d82e3fff1022584f1b1..fe07b0653a20251391683b3447160ab768495428 100644 --- a/dune/solvers/common/CMakeLists.txt +++ b/dune/solvers/common/CMakeLists.txt @@ -12,4 +12,5 @@ install(FILES resize.hh staticmatrixtools.hh tuplevector.hh + typetraits.hh DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/solvers/common) diff --git a/dune/solvers/common/typetraits.hh b/dune/solvers/common/typetraits.hh new file mode 100644 index 0000000000000000000000000000000000000000..968014f8a6f66357bc652713f267c204d90dfbc6 --- /dev/null +++ b/dune/solvers/common/typetraits.hh @@ -0,0 +1,16 @@ +#ifndef DUNE_SOLVERS_COMMON_TYPETRAITS_HH +#define DUNE_SOLVERS_COMMON_TYPETRAITS_HH + +#include <type_traits> + +namespace Dune { +template <typename T> +struct isNumber + : public std::integral_constant<bool, std::is_arithmetic<T>::value> {}; + +template <typename T> +struct isNumber<std::complex<T>> + : public std::integral_constant<bool, isNumber<T>::value> {}; +} + +#endif