TRIQS/nda 1.3.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
range.hpp File Reference
#include "../traits.hpp"
#include <itertools/itertools.hpp>
#include <ostream>
#include <type_traits>

Detailed Description

Includes the itertools header and provides some additional utilities.

Definition in file range.hpp.

Go to the source code of this file.

Classes

struct  nda::ellipsis
 Mimics Python's ... syntax. More...
 

Functions

std::ostream & nda::operator<< (std::ostream &os, ellipsis) noexcept
 Write nda::ellipsis to a std::ostream as ___.
 
std::ostream & nda::operator<< (std::ostream &os, range::all_t) noexcept
 Write nda::range::all_t to a std::ostream as _.
 

Variables

template<typename... Args>
constexpr bool nda::ellipsis_is_present = is_any_of<ellipsis, std::remove_cvref_t<Args>...>
 Constexpr variable that is true if the parameter pack Args contains an nda::ellipsis.
 
template<typename T >
constexpr bool nda::is_range_or_ellipsis = is_any_of<std::remove_cvref_t<T>, range, range::all_t, ellipsis>
 Constexpr variable that is true if the type T is either an nda::range, an nda::range::all_t or an nda::ellipsis.