TerraForge3D  2.3.1
3D Terrain And Landscape Generator

◆ operator*()

template<typename BasicJsonType >
reference nlohmann::detail::iter_impl< BasicJsonType >::operator* ( ) const
inline

return a reference to the value pointed to by the iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

Definition at line 11943 of file json.hpp.

11944 {
11945 JSON_ASSERT(m_object != nullptr);
11946
11947 switch (m_object->m_type)
11948 {
11949 case value_t::object:
11950 {
11951 JSON_ASSERT(m_it.object_iterator != m_object->m_value.object->end());
11952 return m_it.object_iterator->second;
11953 }
11954
11955 case value_t::array:
11956 {
11957 JSON_ASSERT(m_it.array_iterator != m_object->m_value.array->end());
11958 return *m_it.array_iterator;
11959 }
11960
11961 case value_t::null:
11962 JSON_THROW(invalid_iterator::create(214, "cannot get value", *m_object));
11963
11964 case value_t::string:
11965 case value_t::boolean:
11969 case value_t::binary:
11970 case value_t::discarded:
11971 default:
11972 {
11973 if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin()))
11974 {
11975 return *m_object;
11976 }
11977
11978 JSON_THROW(invalid_iterator::create(214, "cannot get value", *m_object));
11979 }
11980 }
11981 }
internal_iterator< typename std::remove_const< BasicJsonType >::type > m_it
the actual iterator of the associated instance
Definition: json.hpp:12410
constexpr bool is_begin() const noexcept
return whether the iterator can be dereferenced
Definition: json.hpp:11569
@ number_integer
number value (signed integer)
@ discarded
discarded by the parser callback function
@ binary
binary array (ordered collection of bytes)
@ object
object (unordered set of name/value pairs)
@ number_float
number value (floating-point)
@ number_unsigned
number value (unsigned integer)
@ array
array (ordered collection of values)
primitive_iterator_t primitive_iterator
generic iterator for all other types
Definition: json.hpp:11661
BasicJsonType::array_t::iterator array_iterator
iterator for JSON arrays
Definition: json.hpp:11659
BasicJsonType::object_t::iterator object_iterator
iterator for JSON objects
Definition: json.hpp:11657