MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / operator*

Method operator*

Source/Utils/json.hpp:11006–11037  ·  view source on GitHub ↗

! @brief return a reference to the value pointed to by the iterator @pre The iterator is initialized; i.e. `m_object != nullptr`. */

Source from the content-addressed store, hash-verified

11004 @pre The iterator is initialized; i.e. `m_object != nullptr`.
11005 */
11006 reference operator*() const
11007 {
11008 JSON_ASSERT(m_object != nullptr);
11009
11010 switch (m_object->m_type)
11011 {
11012 case value_t::object:
11013 {
11014 JSON_ASSERT(m_it.object_iterator != m_object->m_value.object->end());
11015 return m_it.object_iterator->second;
11016 }
11017
11018 case value_t::array:
11019 {
11020 JSON_ASSERT(m_it.array_iterator != m_object->m_value.array->end());
11021 return *m_it.array_iterator;
11022 }
11023
11024 case value_t::null:
11025 JSON_THROW(invalid_iterator::create(214, "cannot get value"));
11026
11027 default:
11028 {
11029 if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin()))
11030 {
11031 return *m_object;
11032 }
11033
11034 JSON_THROW(invalid_iterator::create(214, "cannot get value"));
11035 }
11036 }
11037 }
11038
11039 /*!
11040 @brief dereference the iterator

Callers

nothing calls this directly

Calls 3

createFunction · 0.85
is_beginMethod · 0.80
endMethod · 0.45

Tested by

no test coverage detected