Iterator for object and array value. More...
#include <json/value.h>
Public Types | |
using | value_type = Value |
using | size_t = unsigned int |
using | difference_type = int |
using | reference = Value& |
using | pointer = Value* |
using | SelfType = ValueIterator |
Public Types inherited from Json::ValueIteratorBase | |
using | iterator_category = std::bidirectional_iterator_tag |
using | size_t = unsigned int |
using | difference_type = int |
using | SelfType = ValueIteratorBase |
Public Member Functions | |
ValueIterator () | |
ValueIterator (const ValueConstIterator &other) | |
ValueIterator (const ValueIterator &other) | |
SelfType & | operator= (const SelfType &other) |
SelfType | operator++ (int) |
SelfType | operator-- (int) |
SelfType & | operator-- () |
SelfType & | operator++ () |
reference | operator* () const |
pointer | operator-> () const |
Public Member Functions inherited from Json::ValueIteratorBase | |
bool | operator== (const SelfType &other) const |
bool | operator!= (const SelfType &other) const |
difference_type | operator- (const SelfType &other) const |
Value | key () const |
Return either the index or the member name of the referenced value as a Value. | |
UInt | index () const |
Return the index of the referenced Value, or -1 if it is not an arrayValue. | |
String | name () const |
Return the member name of the referenced Value, or "" if it is not an objectValue. | |
__declspec (deprecated("Use `key = name();` instead.")) char const *memberName() const | |
Return the member name of the referenced Value. | |
char const * | memberName (char const **end) const |
Return the member name of the referenced Value, or NULL if it is not an objectValue. | |
ValueIteratorBase () | |
ValueIteratorBase (const Value::ObjectValues::iterator ¤t) |
Friends | |
class | Value |
Additional Inherited Members | |
Protected Member Functions inherited from Json::ValueIteratorBase | |
const Value & | deref () const |
Value & | deref () |
void | increment () |
void | decrement () |
difference_type | computeDistance (const SelfType &other) const |
bool | isEqual (const SelfType &other) const |
void | copy (const SelfType &other) |
using Json::ValueIterator::difference_type = int |
using Json::ValueIterator::pointer = Value* |
using Json::ValueIterator::reference = Value& |
using Json::ValueIterator::size_t = unsigned int |
using Json::ValueIterator::value_type = Value |
|
default |
References ValueIterator().
Referenced by operator=(), ValueIterator(), and ValueIterator().
|
explicit |
Definition at line 144 of file json_valueiterator.inl.
References Json::ValueIteratorBase::ValueIteratorBase().
|
default |
References operator=(), and ValueIterator().
|
inline |
The return value of non-const iterators can be changed, so the these functions are not const because the returned references/pointers can be used to change state of the base class.
Definition at line 945 of file value.h.
References Json::ValueIteratorBase::deref().
|
inline |
Definition at line 935 of file value.h.
References Json::ValueIteratorBase::increment().
|
inline |
Definition at line 930 of file value.h.
References Json::ValueIteratorBase::decrement().
|
inline |
Definition at line 946 of file value.h.
References Json::ValueIteratorBase::deref().
ValueIterator & Json::ValueIterator::operator= | ( | const SelfType & | other | ) |
Definition at line 151 of file json_valueiterator.inl.
References Json::ValueIteratorBase::copy(), and ValueIterator().
Referenced by ValueIterator().
|
friend |