DAW JSON Link
Public Types | Public Member Functions | Public Attributes | List of all members
daw::json::DAW_JSON_VER::json_details::basic_appender< Container > Struct Template Reference

#include <daw_json_parse_common.h>

Public Types

using difference_type = std::ptrdiff_t
 
using iterator_category = std::output_iterator_tag
 
using pointer = value_type const *
 
using reference = value_type
 
using value_type = typename Container::value_type
 

Public Member Functions

constexpr basic_appender (Container &container)
 
template<typename Value >
constexpr DAW_ATTRIB_FLATINLINE void operator() (Value &&value) const
 
constexpr basic_appenderoperator* ()
 
constexpr basic_appenderoperator++ ()
 
constexpr basic_appender operator++ (int)
 
template<typename Value , std::enable_if_t< not std::is_same< basic_appender, daw::remove_cvref_t< Value >>::value, std::nullptr_t > = nullptr>
constexpr basic_appenderoperator= (Value &&v)
 

Public Attributes

Container * m_container
 

Member Typedef Documentation

◆ difference_type

template<typename Container >
using daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::difference_type = std::ptrdiff_t

◆ iterator_category

template<typename Container >
using daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::iterator_category = std::output_iterator_tag

◆ pointer

template<typename Container >
using daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::pointer = value_type const *

◆ reference

template<typename Container >
using daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::reference = value_type

◆ value_type

template<typename Container >
using daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::value_type = typename Container::value_type

Constructor & Destructor Documentation

◆ basic_appender()

template<typename Container >
constexpr daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::basic_appender ( Container &  container)
inlineexplicitconstexpr

Member Function Documentation

◆ operator()()

template<typename Container >
template<typename Value >
constexpr DAW_ATTRIB_FLATINLINE void daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::operator() ( Value &&  value) const
inlineconstexpr

◆ operator*()

template<typename Container >
constexpr basic_appender& daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::operator* ( )
inlineconstexpr

◆ operator++() [1/2]

template<typename Container >
constexpr basic_appender& daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::operator++ ( )
inlineconstexpr

◆ operator++() [2/2]

template<typename Container >
constexpr basic_appender daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::operator++ ( int  )
inlineconstexpr

◆ operator=()

template<typename Container >
template<typename Value , std::enable_if_t< not std::is_same< basic_appender, daw::remove_cvref_t< Value >>::value, std::nullptr_t > = nullptr>
constexpr basic_appender& daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::operator= ( Value &&  v)
inlineconstexpr

Member Data Documentation

◆ m_container

template<typename Container >
Container* daw::json::DAW_JSON_VER::json_details::basic_appender< Container >::m_container

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