Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Data Structures | Namespaces | Functions
ptr_array.hpp File Reference
#include <ostream>
#include <compare>
#include <ext/ostream>
#include <ext/array>
#include <extensions/range.hpp>
#include <extensions/clone.hpp>
Include dependency graph for ptr_array.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  ext::ptr_array< T, N >
 Implementation of array storing dynamicaly allocated instances of given type. The class mimicks the iterface of the standard library array, but effectively allows polymorphic objects to be stored inside. More...
 

Namespaces

namespace  ext
 
namespace  std
 

Functions

template<std::size_t I, class Type , std::size_t N>
auto & std::get (ext::ptr_array< Type, N > &tpl)
 Specialisation of get function for pointer arrays. More...
 
template<std::size_t I, class Type , std::size_t N>
const auto & std::get (const ext::ptr_array< Type, N > &tpl)
 Specialisation of get function for pointer arrays. More...
 
template<std::size_t I, class Type , std::size_t N>
auto && std::get (ext::ptr_array< Type, N > &&tpl)
 Specialisation of get function for pointer arrays. More...
 
template<class T , std::size_t N>
ext::ostreamext::operator<< (ext::ostream &out, const ext::ptr_array< T, N > &ptr_array)
 Operator to print the array to the output stream. More...
 
template<typename Base , typename ... Types>
constexpr ptr_array< typename std::remove_reference< Base >::type, sizeof ...(Types)+1 > ext::make_ptr_array (Base &&first, Types &&... other)
 Array construction helper. Array is constructed from provided values, type of stored elements is deduced from the first parameter-. More...
 
template<typename Base >
constexpr ptr_array< typename std::remove_reference< Base >::type, 0 > ext::make_ptr_array ()
 Specialisation of array construction helper for empty array. The type parameter of the array must be provided explicitly. More...