A set of utility types to deal with type resolution and basic definitions. More...
#include <limits>
#include <complex>
#include <type_traits>
Classes | |
struct | syten::IdentityType< Type > |
Identity type template to hinder type deduction. More... | |
struct | syten::is_number< T > |
is_number<T>::value is true if T is a scalar type. More... | |
struct | syten::Maximum |
Type implicitly convertible to the maximum of all types for which a specialisation of std::numeric_limits has been defined. More... | |
struct | syten::ScalarBase< Type > |
ScalarBase<>::type is the base type of a complex type and the type itself if the type is a real scalar. More... | |
struct | syten::Verbose< Type > |
A proxy class to increase verbosity in the output. More... | |
Namespaces | |
namespace | syten |
Syten namespace. | |
Typedefs | |
template<class T > | |
using | syten::BaseType = typename std::remove_cv_t< std::remove_reference_t< T > > |
Template alias to obtain the base type of some (potentially reference-) type T . More... | |
Functions | |
template<typename T > | |
std::string | syten::describe_scalar_type () |
Template used to generate a std::string describing the type in question. More... | |
template<typename T > | |
constexpr auto | syten::is_complex () |
Returns true if T is of the form std::complex<X> . More... | |
template<typename Type > | |
Verbose< Type > | syten::verbose (Type const &t) |
Returns Verbose(t) for all t. More... | |
Variables | |
template<typename T > | |
constexpr bool | syten::is_number_v = is_number<T>::value |
Variable template for is_number . More... | |
A set of utility types to deal with type resolution and basic definitions.