WCSim
Static Public Attributes | Private Types | Static Private Attributes | List of all members
detail::is_range< T > Struct Template Reference

#include <json.hpp>

Collaboration diagram for detail::is_range< T >:
Collaboration graph

Static Public Attributes

static constexpr bool value = !std::is_same<iterator, nonesuch>::value && !std::is_same<sentinel, nonesuch>::value && is_iterator_begin
 

Private Types

using t_ref = typename std::add_lvalue_reference< T >::type
 
using iterator = detected_t< result_of_begin, t_ref >
 
using sentinel = detected_t< result_of_end, t_ref >
 

Static Private Attributes

static constexpr auto is_iterator_begin
 

Detailed Description

template<typename T>
struct detail::is_range< T >

Definition at line 3656 of file json.hpp.

Member Typedef Documentation

◆ iterator

template<typename T >
using detail::is_range< T >::iterator = detected_t<result_of_begin, t_ref>
private

Definition at line 3661 of file json.hpp.

◆ sentinel

template<typename T >
using detail::is_range< T >::sentinel = detected_t<result_of_end, t_ref>
private

Definition at line 3662 of file json.hpp.

◆ t_ref

template<typename T >
using detail::is_range< T >::t_ref = typename std::add_lvalue_reference<T>::type
private

Definition at line 3659 of file json.hpp.

Member Data Documentation

◆ is_iterator_begin

template<typename T >
constexpr auto detail::is_range< T >::is_iterator_begin
staticprivate
Initial value:
=
is_iterator_traits<iterator_traits<iterator>>::value

Definition at line 3667 of file json.hpp.

◆ value

template<typename T >
constexpr bool detail::is_range< T >::value = !std::is_same<iterator, nonesuch>::value && !std::is_same<sentinel, nonesuch>::value && is_iterator_begin
static

Definition at line 3671 of file json.hpp.


The documentation for this struct was generated from the following file: