cppx-core
Classes | Namespaces | Typedefs | Functions
Span_.hpp File Reference
#include <cppx-core/collections/is_empty.hpp>
#include <cppx-core/language/syntax/macro-use.hpp>
#include <cppx-core/language/types/signed-size-types.hpp>
#include <cppx-core/language/types/Truth.hpp>
#include <iterator>
#include <queue>
#include <stack>
#include <utility>
Include dependency graph for Span_.hpp:

Go to the source code of this file.

Classes

class  cppx::Span_< Iterator >
 

Namespaces

 cppx
 

Typedefs

template<class Item >
using cppx::Raw_array_span_ = Span_< P_< Item > >
 

Functions

 cppx::CPPX_USE_STD (begin, declval, distance, end, make_reverse_iterator, move, next, prev, queue, reverse_iterator, stack)
 
template<class Collection >
auto cppx::it_begin_of (Collection &&c)
 
template<class Collection >
auto cppx::it_end_of (Collection &&c)
 
template<class Iterator >
auto cppx::n_items_of (const Span_< Iterator > &range) -> Size
 
template<class Iterator >
auto cppx::span_of (const Iterator first, const Iterator beyond) -> Span_< Iterator >
 
template<class Container >
auto cppx::all_of (Container &&c) -> Span_< decltype(begin(c))>
 
template<class Item , class Container >
auto cppx::all_of (const queue< Item, Container > &q) -> Span_< decltype(begin(declval< const Container >()))>
 
template<class Item , class Container >
auto cppx::all_of (const stack< Item, Container > &st) -> Span_< decltype(begin(declval< const Container >()))>
 
template<class Container >
auto cppx::all_but_first_of (Container &&c) -> Span_< decltype(begin(c))>
 
template<class Container >
auto cppx::all_but_first_n_of (Container &&c, const Size n) -> Span_< decltype(begin(c))>
 
template<class Container >
auto cppx::all_but_last_of (Container &&c) -> Span_< decltype(begin(c))>
 
template<class Char , Size n>
auto cppx::text_span_of_literal (const Raw_array_of_< n, const Char > &string_literal) -> Span_< P_< const Char >>
 
template<class Container >
auto cppx::all_but_last_n_of (Container &&c, const Size n) -> Span_< decltype(begin(c))>
 
template<class Container >
auto cppx::reversed (Container &&c) -> Span_< reverse_iterator< decltype(begin(c))>>