Theoretica
A C++ numerical and automatic mathematical library
complex_types.h File Reference

Complex data types definitions. More...

#include <type_traits>
#include "../core/core_traits.h"
#include "../core/constants.h"
#include "./complex.h"

Go to the source code of this file.

Classes

struct  theoretica::is_complex_type< T >
 Type trait to check whether the given type is a specialization of the complex number class or not, using the static boolean element is_complex_type<T>::value. More...
 
struct  theoretica::is_complex_type< complex< T > >
 Type trait to check whether the given type is a specialization of the complex number class or not, using the static boolean element is_complex_type<T>::value. More...
 

Namespaces

 theoretica
 Main namespace of the library which contains all functions and objects.
 

Typedefs

template<typename Type = real>
using theoretica::bicomplex = complex< complex< Type > >
 A bi-complex number.
 
template<typename Structure >
using theoretica::has_complex_elements = is_complex_type< vector_element_t< Structure > >
 Type trait to check whether a container has complex elements.
 
template<typename Structure , typename T = bool>
using theoretica::enable_complex = std::enable_if_t< is_complex_type< Structure >::value, T >
 Enable a function overload if the template typename is considerable a complex number. More...
 

Detailed Description

Complex data types definitions.