Flow123d  JS_before_hm-1804-gf2ad740aa
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t Class Reference

an iterator for primitive JSON types More...

Public Member Functions

void set_begin () noexcept
 set iterator to a defined beginning More...
 
void set_end () noexcept
 set iterator to a defined past the end More...
 
constexpr bool is_begin () const noexcept
 return whether the iterator can be dereferenced More...
 
constexpr bool is_end () const noexcept
 return whether the iterator is at end More...
 
 operator difference_type & () noexcept
 return reference to the value to change and compare More...
 
constexpr operator difference_type () const noexcept
 return value to compare More...
 

Private Attributes

difference_type m_it = std::numeric_limits<std::ptrdiff_t>::denorm_min()
 iterator as signed integer type More...
 

Static Private Attributes

static constexpr difference_type begin_value = 0
 
static constexpr difference_type end_value = begin_value + 1
 

Detailed Description

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
class nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t

an iterator for primitive JSON types

This class models an iterator for primitive JSON types (boolean, number, string). It's only purpose is to allow the iterator/const_iterator classes to "iterate" over primitive values. Internally, the iterator is modeled by a difference_type variable. Value begin_value (0) models the begin, end_value (1) models past the end.

Definition at line 6108 of file json.hpp.

Member Function Documentation

◆ is_begin()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
constexpr bool nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::is_begin ( ) const
inlineconstexprnoexcept

return whether the iterator can be dereferenced

Definition at line 6124 of file json.hpp.

Here is the caller graph for this function:

◆ is_end()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
constexpr bool nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::is_end ( ) const
inlineconstexprnoexcept

return whether the iterator is at end

Definition at line 6130 of file json.hpp.

◆ operator difference_type()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
constexpr nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::operator difference_type ( ) const
inlineconstexprnoexcept

return value to compare

Definition at line 6142 of file json.hpp.

◆ operator difference_type &()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::operator difference_type & ( )
inlinenoexcept

return reference to the value to change and compare

Definition at line 6136 of file json.hpp.

◆ set_begin()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
void nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::set_begin ( )
inlinenoexcept

set iterator to a defined beginning

Definition at line 6112 of file json.hpp.

Here is the caller graph for this function:

◆ set_end()

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
void nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::set_end ( )
inlinenoexcept

set iterator to a defined past the end

Definition at line 6118 of file json.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ begin_value

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
constexpr difference_type nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::begin_value = 0
staticconstexprprivate

Definition at line 6148 of file json.hpp.

◆ end_value

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
constexpr difference_type nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::end_value = begin_value + 1
staticconstexprprivate

Definition at line 6149 of file json.hpp.

◆ m_it

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
difference_type nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::primitive_iterator_t::m_it = std::numeric_limits<std::ptrdiff_t>::denorm_min()
private

iterator as signed integer type

Definition at line 6152 of file json.hpp.


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