tetl 0.1.0
Embedded Template Library
Loading...
Searching...
No Matches
complex< T > Struct Template Reference

A complex number. More...

#include <etl/complex.hpp>

Public Types

using value_type = T
 

Public Member Functions

constexpr complex (complex const &other)=default
 
constexpr complex (T const &re=T(), T const &im=T())
 
template<typename X >
 explicit (sizeof(X) > sizeof(T)) const expr complex(complex< X > const &other)
 
constexpr auto imag () const -> T
 
constexpr auto imag (T val) -> void
 
template<typename X >
constexpr auto operator*= (complex< X > const &val) -> complex< T > &
 
constexpr auto operator*= (T const &val) -> complex< T > &
 
template<typename X >
constexpr auto operator+= (complex< X > const &val) -> complex< T > &
 
constexpr auto operator+= (T const &val) -> complex< T > &
 
template<typename X >
constexpr auto operator-= (complex< X > const &val) -> complex< T > &
 
constexpr auto operator-= (T const &val) -> complex< T > &
 
template<typename X >
constexpr auto operator/= (complex< X > const &val) -> complex< T > &
 
constexpr auto operator/= (T const &val) -> complex< T > &
 
constexpr auto operator= (complex const &other) -> complex &=default
 
template<typename X >
constexpr auto operator= (complex< X > const &other) -> complex< T > &
 
constexpr auto operator= (T const &val) -> complex< T > &
 
constexpr auto real () const -> T
 
constexpr auto real (T val) -> void
 

Friends

template<size_t I, typename X >
constexpr auto get (complex< X > &&) noexcept -> X &&
 
template<size_t I, typename X >
constexpr auto get (complex< X > &) noexcept -> X &
 
template<size_t I, typename X >
constexpr auto get (complex< X > const &&) noexcept -> X const &&
 
template<size_t I, typename X >
constexpr auto get (complex< X > const &) noexcept -> X const &
 
constexpr auto operator== (complex const &lhs, complex const &rhs) -> bool
 
constexpr auto operator== (complex const &lhs, T const &rhs) -> bool
 

Detailed Description

template<typename T>
struct etl::complex< T >

A complex number.

Member Typedef Documentation

◆ value_type

template<typename T >
using value_type = T

Constructor & Destructor Documentation

◆ complex() [1/2]

template<typename T >
constexpr complex ( T const re = T(),
T const im = T() 
)
constexpr

◆ complex() [2/2]

template<typename T >
constexpr complex ( complex< T > const other)
constexprdefault

Member Function Documentation

◆ explicit()

template<typename T >
template<typename X >
explicit ( sizeof(X ,
sizeof(T  
) const &

◆ imag() [1/2]

template<typename T >
constexpr auto imag ( ) const -> T
constexpr

◆ imag() [2/2]

template<typename T >
constexpr auto imag ( T  val) -> void
constexpr

◆ operator*=() [1/2]

template<typename T >
template<typename X >
constexpr auto operator*= ( complex< X > const val) -> complex<T>&
constexpr

◆ operator*=() [2/2]

template<typename T >
constexpr auto operator*= ( T const val) -> complex<T>&
constexpr

◆ operator+=() [1/2]

template<typename T >
template<typename X >
constexpr auto operator+= ( complex< X > const val) -> complex<T>&
constexpr

◆ operator+=() [2/2]

template<typename T >
constexpr auto operator+= ( T const val) -> complex<T>&
constexpr

◆ operator-=() [1/2]

template<typename T >
template<typename X >
constexpr auto operator-= ( complex< X > const val) -> complex<T>&
constexpr

◆ operator-=() [2/2]

template<typename T >
constexpr auto operator-= ( T const val) -> complex<T>&
constexpr

◆ operator/=() [1/2]

template<typename T >
template<typename X >
constexpr auto operator/= ( complex< X > const val) -> complex<T>&
constexpr

◆ operator/=() [2/2]

template<typename T >
constexpr auto operator/= ( T const val) -> complex<T>&
constexpr

◆ operator=() [1/3]

template<typename T >
constexpr auto operator= ( complex< T > const other) -> complex &=default
constexprdefault

◆ operator=() [2/3]

template<typename T >
template<typename X >
constexpr auto operator= ( complex< X > const other) -> complex< T > &
constexpr

◆ operator=() [3/3]

template<typename T >
constexpr auto operator= ( T const val) -> complex<T>&
constexpr

◆ real() [1/2]

template<typename T >
constexpr auto real ( ) const -> T
constexpr

◆ real() [2/2]

template<typename T >
constexpr auto real ( T  val) -> void
constexpr

Friends And Related Symbol Documentation

◆ get [1/4]

template<typename T >
template<size_t I, typename X >
constexpr auto get ( complex< X > &&  z) -> X&&
friend

◆ get [2/4]

template<typename T >
template<size_t I, typename X >
constexpr auto get ( complex< X > &  z) -> X&
friend

◆ get [3/4]

template<typename T >
template<size_t I, typename X >
constexpr auto get ( complex< X > const &&  z) -> X const&&
friend

◆ get [4/4]

template<typename T >
template<size_t I, typename X >
constexpr auto get ( complex< X > const z) -> X const&
friend

◆ operator== [1/2]

template<typename T >
constexpr auto operator== ( complex< T > const lhs,
complex< T > const rhs 
) -> bool
friend

◆ operator== [2/2]

template<typename T >
constexpr auto operator== ( complex< T > const lhs,
T const rhs 
) -> bool
friend

The documentation for this struct was generated from the following file: