TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
Loading...
Searching...
No Matches
expression_template_tools.hpp
#include "./macros.hpp"
#include <complex>
#include <type_traits>
#include <utility>

Detailed Description

Building blocks for expression-template and other type traits.

Definition in file expression_template_tools.hpp.

Go to the source code of this file.

Classes

struct  triqs::utility::is_in_ZRC< T >
 Trait identifying types that lie in \( \mathbb{Z} \cup \mathbb{R} \cup \mathbb{C} \). More...
struct  triqs::utility::remove_rvalue_ref< T >
 Strip rvalue references from T while turning lvalue references into const &. More...
struct  triqs::utility::tags::divides
 Tag for / operation. More...
struct  triqs::utility::tags::minus
 Tag for - operation. More...
struct  triqs::utility::tags::multiplies
 Tag for * operation. More...
struct  triqs::utility::tags::plus
 Tag for + operation. More...
struct  triqs::utility::type_of_mult< A, B >
 Trait whose nested type is decltype(a * b) with cv-/ref-qualifiers stripped from the operands. More...

Namespaces

namespace  triqs::utility::tags
 Namespace for empty tag types identifying the four basic arithmetic operations used in expression templates.

Typedefs

template<class T>
using triqs::utility::remove_rvalue_ref_t = typename remove_rvalue_ref<T>::type
 Alias for the nested type in remove_rvalue_ref.