Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Data Structures | Namespaces | Typedefs | Functions
array.hpp File Reference
#include <array>
#include <ext/ostream>
#include <extensions/range.hpp>
Include dependency graph for array.hpp:

Go to the source code of this file.

Data Structures

struct  std::experimental::details::return_type_helper< D,... >
 
struct  std::experimental::details::return_type_helper< void, Types... >
 
class  ext::array< T, N >
 Class extending the array class from the standard library. Original reason is to allow printing of the container with overloaded operator <<. More...
 

Namespaces

namespace  std
 
namespace  std::experimental
 
namespace  std::experimental::details
 
namespace  ext
 

Typedefs

template<class D , class... Types>
using std::experimental::details::return_type = std::array< typename return_type_helper< D, Types... >::type, sizeof...(Types)>
 

Functions

template<class D = void, class... Types>
constexpr details::return_type< D, Types... > std::experimental::make_array (Types &&... t)
 
template<class T , std::size_t N>
ext::ostreamext::operator<< (ext::ostream &out, const ext::array< T, N > &array)
 Operator to print the array to the output stream. More...
 
template<typename Base , typename ... Types>
constexpr array< typename std::remove_reference< Base >::type, sizeof ...(Types)+1 > ext::make_array (Base &&first, Types &&... other)
 Equivalent to the make_array from standard library but produces the ext::array. More...
 
template<typename Base >
constexpr array< typename std::remove_reference< Base >::type, 0 > ext::make_array ()
 Special case of make_array handling zero parameters. Technically calls default constructor. More...