range.hpp File Reference
Include dependency graph for range.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  is_range< R >
 
struct  range< Iterator >
 

Namespaces

 core
 
Copyright © 2013 - 2015 MNMLSTC.
 
 core::v2
 
 core::v2::impl
 

Typedefs

template
<
class
T
>
using adl_begin_t = decltype(begin(::std::declval< T >()))
 
template
<
class
T
>
using adl_end_t = decltype(end(::std::declval< T >()))
 

Functions

template
<
class
T
>
adl_begin_t< T > adl_begin (T &&t)
 
template
<
class
T
>
adl_end_t< T > adl_end (T &&t)
 
template
<
class
Iter
>
range<::std::move_iterator< Iter > > make_move_range (Iter start, Iter stop)
 
template
<
class
T
>
range<::std::move_iterator< T * > > make_move_range (T *ptr, ::std::size_t n)
 
template
<
class
T
>
range< number_iterator< T > > make_number_range (T start, T stop, T step) noexcept
 
template
<
class
T
>
range< number_iterator< T > > make_number_range (T start, T stop) noexcept
 
template
<
class
T
>
auto make_range (T *ptr, ::std::size_t n) -> range< T *>
 
template
<
class
Iterator
>
auto make_range (Iterator begin, Iterator end) -> range< Iterator >
 
template
<
class
Range
>
auto make_range (Range &&value) -> range< decltype(begin(value))>
 
template<class T , class CharT , class Traits = ::std::char_traits<CharT>>
auto make_range (::std::basic_istream< CharT, Traits > &stream) -> range< ::std::istream_iterator< T, CharT, Traits > >
 
template<class CharT , class Traits = ::std::char_traits<CharT>>
auto make_range (::std::basic_streambuf< CharT, Traits > *buffer) -> range< ::std::istreambuf_iterator< CharT, Traits > >
 
template
<
class
Iterator
>
void swap (range< Iterator > &lhs, range< Iterator > &rhs) noexcept(noexcept(lhs.swap(rhs)))