Timer Console
Loading...
Searching...
No Matches
detail::json_ref< BasicJsonType > Class Template Reference

#include <json.hpp>

Public Types

using value_type = BasicJsonType
 

Public Member Functions

 json_ref (value_type &&value)
 
 json_ref (const value_type &value)
 
 json_ref (std::initializer_list< json_ref > init)
 
template<class... Args, enable_if_t< std::is_constructible< value_type, Args... >::value, int > = 0>
 json_ref (Args &&... args)
 
 json_ref (json_ref &&) noexcept=default
 
 json_ref (const json_ref &)=delete
 
json_refoperator= (const json_ref &)=delete
 
json_refoperator= (json_ref &&)=delete
 
 ~json_ref ()=default
 
value_type moved_or_copied () const
 
value_type const & operator* () const
 
value_type const * operator-> () const
 

Private Attributes

value_type owned_value = nullptr
 
value_type const * value_ref = nullptr
 

Member Typedef Documentation

◆ value_type

template<typename BasicJsonType>
using detail::json_ref< BasicJsonType >::value_type = BasicJsonType

Constructor & Destructor Documentation

◆ json_ref() [1/6]

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::json_ref ( value_type && value)
inline

◆ json_ref() [2/6]

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::json_ref ( const value_type & value)
inline

◆ json_ref() [3/6]

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::json_ref ( std::initializer_list< json_ref< BasicJsonType > > init)
inline

◆ json_ref() [4/6]

template<typename BasicJsonType>
template<class... Args, enable_if_t< std::is_constructible< value_type, Args... >::value, int > = 0>
detail::json_ref< BasicJsonType >::json_ref ( Args &&... args)
inline

◆ json_ref() [5/6]

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::json_ref ( json_ref< BasicJsonType > && )
defaultnoexcept

◆ json_ref() [6/6]

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::json_ref ( const json_ref< BasicJsonType > & )
delete

◆ ~json_ref()

template<typename BasicJsonType>
detail::json_ref< BasicJsonType >::~json_ref ( )
default

Member Function Documentation

◆ moved_or_copied()

template<typename BasicJsonType>
value_type detail::json_ref< BasicJsonType >::moved_or_copied ( ) const
inline

◆ operator*()

template<typename BasicJsonType>
value_type const & detail::json_ref< BasicJsonType >::operator* ( ) const
inline

◆ operator->()

template<typename BasicJsonType>
value_type const * detail::json_ref< BasicJsonType >::operator-> ( ) const
inline

◆ operator=() [1/2]

template<typename BasicJsonType>
json_ref & detail::json_ref< BasicJsonType >::operator= ( const json_ref< BasicJsonType > & )
delete

◆ operator=() [2/2]

template<typename BasicJsonType>
json_ref & detail::json_ref< BasicJsonType >::operator= ( json_ref< BasicJsonType > && )
delete

Member Data Documentation

◆ owned_value

template<typename BasicJsonType>
value_type detail::json_ref< BasicJsonType >::owned_value = nullptr
mutableprivate

◆ value_ref

template<typename BasicJsonType>
value_type const* detail::json_ref< BasicJsonType >::value_ref = nullptr
private

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