Classes | Namespaces | Macros | Functions
ring_span.hpp File Reference
#include <cassert>
#include <iterator>
#include <utility>
#include <algorithm>
Include dependency graph for ring_span.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  nonstd::ring_span_lite::std11::conditional< B, T, F >
 
struct  nonstd::ring_span_lite::std11::conditional< false, T, F >
 
struct  nonstd::ring_span_lite::copy_popper< T >
 
struct  nonstd::ring_span_lite::default_popper< T >
 
struct  nonstd::ring_span_lite::null_popper< T >
 
class  nonstd::ring_span_lite::detail::ring_iterator< RS, is_const >
 
class  nonstd::ring_span_lite::detail::ring_iterator< RS, is_const >
 
class  nonstd::ring_span_lite::ring_span< T, Popper >
 

Namespaces

 nonstd
 
 nonstd::ring_span_lite
 
 nonstd::ring_span_lite::detail
 
 nonstd::ring_span_lite::std11
 
 nonstd::ring_span_lite::std17
 

Macros

#define NONSTD_RING_SPAN_LITE_HPP
 
#define nsrs_BETWEEN(v, lo, hi)   ( (lo) <= (v) && (v) < (hi) )
 
#define nsrs_COMPILER_CLANG_VERSION   0
 
#define nsrs_COMPILER_GNUC_VERSION   0
 
#define nsrs_COMPILER_MSVC_VER   0
 
#define nsrs_COMPILER_MSVC_VERSION   0
 
#define nsrs_COMPILER_VERSION(major, minor, patch)   ( 10 * ( 10 * (major) + (minor) ) + (patch) )
 
#define nsrs_CONFIG_CONFIRMS_COMPILATION_ERRORS   0
 
#define nsrs_CONFIG_SELECT_RING_SPAN   ( nsrs_HAVE_STD_RING_SPAN ? nsrs_RING_SPAN_STD : nsrs_RING_SPAN_NONSTD )
 
#define nsrs_CONFIG_STRICT_P0059   0
 
#define nsrs_constexpr   /*constexpr*/
 
#define nsrs_constexpr14   /*constexpr*/
 
#define nsrs_CPLUSPLUS   __cplusplus
 
#define nsrs_CPP11_100   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1600)
 
#define nsrs_CPP11_110   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1700)
 
#define nsrs_CPP11_120   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1800)
 
#define nsrs_CPP11_140   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1900)
 
#define nsrs_CPP11_90   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1500)
 
#define nsrs_CPP11_OR_GREATER   ( nsrs_CPLUSPLUS >= 201103L )
 
#define nsrs_CPP11_OR_GREATER_   ( nsrs_CPLUSPLUS >= 201103L )
 
#define nsrs_CPP14_000   (nsrs_CPP14_OR_GREATER)
 
#define nsrs_CPP14_OR_GREATER   ( nsrs_CPLUSPLUS >= 201402L )
 
#define nsrs_CPP17_000   (nsrs_CPP17_OR_GREATER)
 
#define nsrs_CPP17_OR_GREATER   ( nsrs_CPLUSPLUS >= 201703L )
 
#define nsrs_CPP20_OR_GREATER   ( nsrs_CPLUSPLUS >= 202000L )
 
#define nsrs_CPP98_OR_GREATER   ( nsrs_CPLUSPLUS >= 199711L )
 
#define nsrs_HAS_CPP0X   0
 
#define nsrs_HAVE_CONSTEXPR_11   nsrs_CPP11_140
 
#define nsrs_HAVE_CONSTEXPR_14   nsrs_CPP14_000
 
#define nsrs_HAVE_IS_DEFAULT   nsrs_CPP11_140
 
#define nsrs_HAVE_IS_DELETE   nsrs_CPP11_140
 
#define nsrs_HAVE_NOEXCEPT   nsrs_CPP11_140
 
#define nsrs_HAVE_NULLPTR   nsrs_CPP11_100
 
#define nsrs_HAVE_STD_RING_SPAN   0
 
#define nsrs_noexcept   /*noexcept*/
 
#define nsrs_noexcept_op(expr)   /*noexcept(expr)*/
 
#define nsrs_nullptr   NULL
 
#define nsrs_RESTORE_WARNINGS()   /*empty*/
 
#define nsrs_RING_SPAN_DEFAULT   0
 
#define nsrs_RING_SPAN_LITE_EXTENSION   (! nsrs_CONFIG_STRICT_P0059)
 
#define nsrs_RING_SPAN_NONSTD   1
 
#define nsrs_RING_SPAN_STD   2
 
#define nsrs_STRINGIFY(x)   nsrs_STRINGIFY_( x )
 
#define nsrs_STRINGIFY_(x)   #x
 
#define nsrs_USES_STD_RING_SPAN   ( (nsrs_CONFIG_SELECT_RING_SPAN == nsrs_RING_SPAN_STD) || ((nsrs_CONFIG_SELECT_RING_SPAN == nsrs_RING_SPAN_DEFAULT) && nsrs_HAVE_STD_RING_SPAN) )
 
#define ring_span_lite_MAJOR   0
 
#define ring_span_lite_MINOR   3
 
#define ring_span_lite_PATCH   0
 
#define ring_span_lite_VERSION   nsrs_STRINGIFY(ring_span_lite_MAJOR) "." nsrs_STRINGIFY(ring_span_lite_MINOR) "." nsrs_STRINGIFY(ring_span_lite_PATCH)
 

Functions

template<typename T >
T const & nonstd::ring_span_lite::std11::move (T const &t)
 
template<class RS , bool C>
ring_iterator< RS, C > nonstd::ring_span_lite::detail::operator+ (ring_iterator< RS, C > it, int i) nsrs_noexcept
 
template<class RS , bool C>
ring_iterator< RS, C > nonstd::ring_span_lite::detail::operator- (ring_iterator< RS, C > it, int i) nsrs_noexcept
 
template<class T , class Popper >
void nonstd::ring_span_lite::swap (ring_span< T, Popper > &lhs, ring_span< T, Popper > &rhs) nsrs_noexcept_op(nsrs_noexcept_op(lhs.swap(rhs)))
 

Macro Definition Documentation

#define NONSTD_RING_SPAN_LITE_HPP

Definition at line 13 of file ring_span.hpp.

#define nsrs_BETWEEN (   v,
  lo,
  hi 
)    ( (lo) <= (v) && (v) < (hi) )

Definition at line 147 of file ring_span.hpp.

#define nsrs_COMPILER_CLANG_VERSION   0

Definition at line 108 of file ring_span.hpp.

#define nsrs_COMPILER_GNUC_VERSION   0

Definition at line 114 of file ring_span.hpp.

#define nsrs_COMPILER_MSVC_VER   0

Definition at line 99 of file ring_span.hpp.

#define nsrs_COMPILER_MSVC_VERSION   0

Definition at line 100 of file ring_span.hpp.

#define nsrs_COMPILER_VERSION (   major,
  minor,
  patch 
)    ( 10 * ( 10 * (major) + (minor) ) + (patch) )

Definition at line 103 of file ring_span.hpp.

#define nsrs_CONFIG_CONFIRMS_COMPILATION_ERRORS   0

Definition at line 41 of file ring_span.hpp.

#define nsrs_CONFIG_SELECT_RING_SPAN   ( nsrs_HAVE_STD_RING_SPAN ? nsrs_RING_SPAN_STD : nsrs_RING_SPAN_NONSTD )

Definition at line 31 of file ring_span.hpp.

#define nsrs_CONFIG_STRICT_P0059   0

Definition at line 35 of file ring_span.hpp.

#define nsrs_constexpr   /*constexpr*/

Definition at line 206 of file ring_span.hpp.

#define nsrs_constexpr14   /*constexpr*/

Definition at line 212 of file ring_span.hpp.

#define nsrs_CPLUSPLUS   __cplusplus

Definition at line 51 of file ring_span.hpp.

#define nsrs_CPP11_100   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1600)

Definition at line 136 of file ring_span.hpp.

#define nsrs_CPP11_110   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1700)

Definition at line 137 of file ring_span.hpp.

#define nsrs_CPP11_120   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1800)

Definition at line 138 of file ring_span.hpp.

#define nsrs_CPP11_140   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1900)

Definition at line 139 of file ring_span.hpp.

#define nsrs_CPP11_90   (nsrs_CPP11_OR_GREATER_ || nsrs_COMPILER_MSVC_VER >= 1500)

Definition at line 135 of file ring_span.hpp.

#define nsrs_CPP11_OR_GREATER   ( nsrs_CPLUSPLUS >= 201103L )

Definition at line 56 of file ring_span.hpp.

#define nsrs_CPP11_OR_GREATER_   ( nsrs_CPLUSPLUS >= 201103L )

Definition at line 57 of file ring_span.hpp.

#define nsrs_CPP14_000   (nsrs_CPP14_OR_GREATER)

Definition at line 141 of file ring_span.hpp.

#define nsrs_CPP14_OR_GREATER   ( nsrs_CPLUSPLUS >= 201402L )

Definition at line 58 of file ring_span.hpp.

#define nsrs_CPP17_000   (nsrs_CPP17_OR_GREATER)

Definition at line 142 of file ring_span.hpp.

#define nsrs_CPP17_OR_GREATER   ( nsrs_CPLUSPLUS >= 201703L )

Definition at line 59 of file ring_span.hpp.

#define nsrs_CPP20_OR_GREATER   ( nsrs_CPLUSPLUS >= 202000L )

Definition at line 60 of file ring_span.hpp.

#define nsrs_CPP98_OR_GREATER   ( nsrs_CPLUSPLUS >= 199711L )

Definition at line 55 of file ring_span.hpp.

#define nsrs_HAS_CPP0X   0

Definition at line 125 of file ring_span.hpp.

#define nsrs_HAVE_CONSTEXPR_11   nsrs_CPP11_140

Definition at line 151 of file ring_span.hpp.

#define nsrs_HAVE_CONSTEXPR_14   nsrs_CPP14_000

Definition at line 159 of file ring_span.hpp.

#define nsrs_HAVE_IS_DEFAULT   nsrs_CPP11_140

Definition at line 152 of file ring_span.hpp.

#define nsrs_HAVE_IS_DELETE   nsrs_CPP11_140

Definition at line 153 of file ring_span.hpp.

#define nsrs_HAVE_NOEXCEPT   nsrs_CPP11_140

Definition at line 154 of file ring_span.hpp.

#define nsrs_HAVE_NULLPTR   nsrs_CPP11_100

Definition at line 155 of file ring_span.hpp.

#define nsrs_HAVE_STD_RING_SPAN   0

Definition at line 64 of file ring_span.hpp.

#define nsrs_noexcept   /*noexcept*/

Definition at line 219 of file ring_span.hpp.

#define nsrs_noexcept_op (   expr)    /*noexcept(expr)*/

Definition at line 220 of file ring_span.hpp.

#define nsrs_nullptr   NULL

Definition at line 226 of file ring_span.hpp.

#define nsrs_RESTORE_WARNINGS ( )    /*empty*/

Definition at line 198 of file ring_span.hpp.

#define nsrs_RING_SPAN_DEFAULT   0

Definition at line 26 of file ring_span.hpp.

#define nsrs_RING_SPAN_LITE_EXTENSION   (! nsrs_CONFIG_STRICT_P0059)

Definition at line 38 of file ring_span.hpp.

#define nsrs_RING_SPAN_NONSTD   1

Definition at line 27 of file ring_span.hpp.

#define nsrs_RING_SPAN_STD   2

Definition at line 28 of file ring_span.hpp.

#define nsrs_STRINGIFY (   x)    nsrs_STRINGIFY_( x )

Definition at line 21 of file ring_span.hpp.

#define nsrs_STRINGIFY_ (   x)    #x

Definition at line 22 of file ring_span.hpp.

Definition at line 76 of file ring_span.hpp.

#define ring_span_lite_MAJOR   0

Definition at line 15 of file ring_span.hpp.

#define ring_span_lite_MINOR   3

Definition at line 16 of file ring_span.hpp.

#define ring_span_lite_PATCH   0

Definition at line 17 of file ring_span.hpp.

Definition at line 19 of file ring_span.hpp.



plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 04:02:49