TrinityCore
|
(Constant) member iterator for a JSON object value More...
#include <document.h>
Public Types | |
typedef GenericMemberIterator | Iterator |
Iterator type itself. More... | |
typedef GenericMemberIterator < true, Encoding, Allocator > | ConstIterator |
Constant iterator type. More... | |
typedef GenericMemberIterator < false, Encoding, Allocator > | NonConstIterator |
Non-constant iterator type. More... | |
typedef BaseType::pointer | Pointer |
Pointer to (const) GenericMember. More... | |
typedef BaseType::reference | Reference |
Reference to (const) GenericMember. More... | |
typedef BaseType::difference_type | DifferenceType |
Signed integer type (e.g. ptrdiff_t ) More... | |
Public Member Functions | |
GenericMemberIterator () | |
Default constructor (singular value) More... | |
GenericMemberIterator (const NonConstIterator &it) | |
Iterator conversions to more const. More... | |
DifferenceType | operator- (ConstIterator that) const |
Distance. More... | |
stepping | |
Iterator & | operator++ () |
Iterator & | operator-- () |
Iterator | operator++ (int) |
Iterator | operator-- (int) |
increment/decrement | |
Iterator | operator+ (DifferenceType n) const |
Iterator | operator- (DifferenceType n) const |
Iterator & | operator+= (DifferenceType n) |
Iterator & | operator-= (DifferenceType n) |
relations | |
bool | operator== (ConstIterator that) const |
bool | operator!= (ConstIterator that) const |
bool | operator<= (ConstIterator that) const |
bool | operator>= (ConstIterator that) const |
bool | operator< (ConstIterator that) const |
bool | operator> (ConstIterator that) const |
dereference | |
Reference | operator* () const |
Pointer | operator-> () const |
Reference | operator[] (DifferenceType n) const |
Private Types | |
typedef GenericMember < Encoding, Allocator > | PlainType |
typedef internal::MaybeAddConst< Const, PlainType >::Type | ValueType |
typedef std::iterator < std::random_access_iterator_tag, ValueType > | BaseType |
Private Member Functions | |
GenericMemberIterator (Pointer p) | |
Internal constructor from plain pointer. More... | |
Private Attributes | |
Pointer | ptr_ |
raw pointer More... | |
Friends | |
class | GenericValue< Encoding, Allocator > |
template<bool , typename , typename > | |
class | GenericMemberIterator |
(Constant) member iterator for a JSON object value
Const | Is this a constant iterator? |
Encoding | Encoding of the value. (Even non-string values need to have the same encoding in a document) |
Allocator | Allocator type for allocating memory of object, array and string. |
This class implements a Random Access Iterator for GenericMember elements of a GenericValue, see ISO/IEC 14882:2003(E) C++ standard, 24.1 [lib.iterator.requirements].
NULL
, e.g. from GenericValue::FindMember.RAPIDJSON_NOMEMBERITERATORCLASS
to fall back to a pointer-based implementation, if your platform doesn't provide the C++ <iterator> header.
|
private |
typedef GenericMemberIterator<true,Encoding,Allocator> GenericMemberIterator< Const, Encoding, Allocator >::ConstIterator |
Constant iterator type.
typedef BaseType::difference_type GenericMemberIterator< Const, Encoding, Allocator >::DifferenceType |
Signed integer type (e.g. ptrdiff_t
)
typedef GenericMemberIterator GenericMemberIterator< Const, Encoding, Allocator >::Iterator |
Iterator type itself.
typedef GenericMemberIterator<false,Encoding,Allocator> GenericMemberIterator< Const, Encoding, Allocator >::NonConstIterator |
Non-constant iterator type.
|
private |
typedef BaseType::pointer GenericMemberIterator< Const, Encoding, Allocator >::Pointer |
Pointer to (const) GenericMember.
typedef BaseType::reference GenericMemberIterator< Const, Encoding, Allocator >::Reference |
Reference to (const) GenericMember.
|
private |
|
inline |
Default constructor (singular value)
Creates an iterator pointing to no element.
|
inline |
Iterator conversions to more const.
it | (Non-const) iterator to copy from |
Allows the creation of an iterator from another GenericMemberIterator that is "less const". Especially, creating a non-constant iterator from a constant iterator are disabled:
Const
template parameter is already false
, this constructor effectively defines a regular copy-constructor. Otherwise, the copy constructor is implicitly defined.
|
inlineexplicitprivate |
Internal constructor from plain pointer.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Distance.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
|
friend |
|
private |
raw pointer