|
typedef GenericMember< Encoding, Allocator > | Member |
| Name-value pair in an object.
|
|
typedef Encoding | EncodingType |
| Encoding type from template parameter.
|
|
typedef Allocator | AllocatorType |
| Allocator type from template parameter.
|
|
typedef Encoding::Ch | Ch |
| Character type derived from Encoding.
|
|
typedef GenericStringRef< Ch > | StringRefType |
| Reference to a constant string
|
|
typedef GenericMemberIterator< false, Encoding, Allocator >::Iterator | MemberIterator |
| Member iterator for iterating in object.
|
|
typedef GenericMemberIterator< true, Encoding, Allocator >::Iterator | ConstMemberIterator |
| Constant member iterator for iterating in object.
|
|
typedef GenericValue * | ValueIterator |
| Value iterator for iterating in array.
|
|
typedef GenericValue< Encoding, Allocator > | ValueType |
| Value type of itself.
|
|
typedef GenericArray< false, ValueType > | Array |
|
typedef GenericArray< true, ValueType > | ConstArray |
|
typedef GenericObject< false, ValueType > | Object |
|
typedef GenericObject< true, ValueType > | ConstObject |
|
|
enum | {
kBoolFlag = 0x0008,
kNumberFlag = 0x0010,
kIntFlag = 0x0020,
kUintFlag = 0x0040,
kInt64Flag = 0x0080,
kUint64Flag = 0x0100,
kDoubleFlag = 0x0200,
kStringFlag = 0x0400,
kCopyFlag = 0x0800,
kInlineStrFlag = 0x1000,
kNullFlag = kNullType,
kTrueFlag = static_cast<int>(kTrueType) | static_cast<int>(kBoolFlag),
kFalseFlag = static_cast<int>(kFalseType) | static_cast<int>(kBoolFlag),
kNumberIntFlag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag),
kNumberUintFlag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kUintFlag | kUint64Flag | kInt64Flag),
kNumberInt64Flag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kInt64Flag),
kNumberUint64Flag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kUint64Flag),
kNumberDoubleFlag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kDoubleFlag),
kNumberAnyFlag = static_cast<int>(kNumberType) | static_cast<int>(kNumberFlag | kIntFlag | kInt64Flag | kUintFlag | kUint64Flag | kDoubleFlag),
kConstStringFlag = static_cast<int>(kStringType) | static_cast<int>(kStringFlag),
kCopyStringFlag = static_cast<int>(kStringType) | static_cast<int>(kStringFlag | kCopyFlag),
kShortStringFlag = static_cast<int>(kStringType) | static_cast<int>(kStringFlag | kCopyFlag | kInlineStrFlag),
kObjectFlag = kObjectType,
kArrayFlag = kArrayType,
kTypeMask = 0x07
} |
|
Data | data_ |
|
template<typename , typename , typename > |
class | GenericDocument |
|
static const SizeType | kDefaultArrayCapacity = RAPIDJSON_VALUE_DEFAULT_ARRAY_CAPACITY |
|
static const SizeType | kDefaultObjectCapacity = RAPIDJSON_VALUE_DEFAULT_OBJECT_CAPACITY |
|
GenericValue & | operator= (GenericValue &rhs) RAPIDJSON_NOEXCEPT |
| Assignment with move semantics. 更多...
|
|
GenericValue & | operator= (StringRefType str) RAPIDJSON_NOEXCEPT |
| Assignment of constant string reference (no copy) 更多...
|
|
template<typename T > |
| RAPIDJSON_DISABLEIF_RETURN ((internal::IsPointer< T >),(GenericValue &)) operator |
| Assignment with primitive types. 更多...
|
|
const RAPIDJSON_FORCEINLINE Ch * | GetStringPointer () const |
|
const RAPIDJSON_FORCEINLINE Ch * | SetStringPointer (const Ch *str) |
|
RAPIDJSON_FORCEINLINE GenericValue * | GetElementsPointer () const |
|
RAPIDJSON_FORCEINLINE GenericValue * | SetElementsPointer (GenericValue *elements) |
|
RAPIDJSON_FORCEINLINE Member * | GetMembersPointer () const |
|
RAPIDJSON_FORCEINLINE Member * | SetMembersPointer (Member *members) |
|
RAPIDJSON_FORCEINLINE Member * | DoAllocMembers (SizeType capacity, Allocator &allocator) |
|
void | DoReserveMembers (SizeType newCapacity, Allocator &allocator) |
|
template<typename SourceAllocator > |
MemberIterator | DoFindMember (const GenericValue< Encoding, SourceAllocator > &name) |
|
void | DoClearMembers () |
|
void | DoFreeMembers () |
|
void | DoAddMember (GenericValue &name, GenericValue &value, Allocator &allocator) |
|
MemberIterator | DoRemoveMember (MemberIterator m) |
|
MemberIterator | DoEraseMembers (ConstMemberIterator first, ConstMemberIterator last) |
|
template<typename SourceAllocator > |
void | DoCopyMembers (const GenericValue< Encoding, SourceAllocator > &rhs, Allocator &allocator, bool copyConstStrings) |
|
void | SetArrayRaw (GenericValue *values, SizeType count, Allocator &allocator) |
|
void | SetObjectRaw (Member *members, SizeType count, Allocator &allocator) |
| Initialize this value as object with initial data, without calling destructor.
|
|
void | SetStringRaw (StringRefType s) RAPIDJSON_NOEXCEPT |
| Initialize this value as constant string, without calling destructor.
|
|
void | SetStringRaw (StringRefType s, Allocator &allocator) |
| Initialize this value as copy string with initial data, without calling destructor.
|
|
void | RawAssign (GenericValue &rhs) RAPIDJSON_NOEXCEPT |
| Assignment without calling destructor
|
|
template<typename SourceAllocator > |
bool | StringEqual (const GenericValue< Encoding, SourceAllocator > &rhs) const |
|
static const RAPIDJSON_FORCEINLINE Ch * | DataString (const Data &data) |
|
static RAPIDJSON_FORCEINLINE SizeType | DataStringLength (const Data &data) |
|
template<typename Encoding, typename Allocator = RAPIDJSON_DEFAULT_ALLOCATOR>
class rapidjson::GenericValue< Encoding, Allocator >
Represents a JSON value. Use Value for UTF8 encoding and default allocator.
A JSON value can be one of 7 types. This class is a variant type supporting these types.
Use the Value if UTF8 and default allocator
- 模板参数
-
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. |