initializer_list.h File Reference
#include <TiledArray/tiled_range.h>
#include <TiledArray/tiled_range1.h>
#include <TiledArray/type_traits.h>
#include <algorithm>
#include <array>
#include <initializer_list>
#include <type_traits>
Include dependency graph for initializer_list.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  TiledArray::InitializerListRank< T, SizeType >
 Primary template for determining how many nested std::initializer_list's are in a type. More...
 
struct  TiledArray::InitializerListRank< std::initializer_list< T >, SizeType >
 Specialization of InitializerListRank used when the template type parameter is a std::initializer_list type. More...
 

Namespaces

 TiledArray
 
 TiledArray::detail
 

Typedefs

template<typename T >
using TiledArray::detail::vector_il = std::initializer_list< T >
 
template<typename T >
using TiledArray::detail::matrix_il = std::initializer_list< vector_il< T > >
 
template<typename T >
using TiledArray::detail::tensor3_il = std::initializer_list< matrix_il< T > >
 
template<typename T >
using TiledArray::detail::tensor4_il = std::initializer_list< tensor3_il< T > >
 
template<typename T >
using TiledArray::detail::tensor5_il = std::initializer_list< tensor4_il< T > >
 
template<typename T >
using TiledArray::detail::tensor6_il = std::initializer_list< tensor5_il< T > >
 

Functions

template<typename T , typename U = std::array<TiledRange1, initializer_list_rank_v<std::decay_t<T>>>>
auto TiledArray::tiled_range_from_il (T &&il, U shape={})
 Creates a TiledRange for the provided initializer list. More...
 
template<typename T , typename OutputItr >
auto TiledArray::flatten_il (T &&il, OutputItr out_itr)
 Flattens the contents of a (possibly nested) initializer_list into the provided buffer. More...
 
template<typename T , typename U >
auto TiledArray::get_elem_from_il (T idx, U &&il, std::size_t depth=0)
 Retrieves the specified element from an initializer_list. More...
 
template<typename ArrayType , typename T >
auto TiledArray::array_from_il (World &world, const TiledRange &trange, T &&il)
 Converts an std::initializer_list into a tiled array. More...
 
template<typename ArrayType , typename T >
auto TiledArray::array_from_il (World &world, T &&il)
 Converts an std::initializer_list into a single tile array. More...
 

Variables

template<typename T , typename SizeType = std::size_t>
constexpr auto TiledArray::initializer_list_rank_v
 Helper variable for retrieving the degree of nesting for an std::initializer_list. More...
 

Documentation

util/initializer_list.h contains routines and template meta-programming utilities for manipulating std::initializer_list instances.

Definition in file initializer_list.h.