common definitions and configuration More...
#include <cstdlib>
#include <cstring>
#include <cassert>
#include "allocators.h"
#include "encodings.h"
Go to the source code of this file.
Classes | |
struct | rapidjson::StreamTraits< Stream > |
Provides additional information for stream. More... | |
struct | rapidjson::GenericStringStream< Encoding > |
Read-only string stream. More... | |
struct | rapidjson::StreamTraits< GenericStringStream< Encoding > > |
struct | rapidjson::GenericInsituStringStream< Encoding > |
A read-write string stream. More... | |
struct | rapidjson::StreamTraits< GenericInsituStringStream< Encoding > > |
Namespaces | |
rapidjson | |
main RapidJSON namespace | |
Macros | |
#define | RAPIDJSON_MAJOR_VERSION 1 |
Major version of RapidJSON in integer. | |
#define | RAPIDJSON_MINOR_VERSION 0 |
Minor version of RapidJSON in integer. | |
#define | RAPIDJSON_PATCH_VERSION 2 |
Patch version of RapidJSON in integer. | |
#define | RAPIDJSON_VERSION_STRING RAPIDJSON_STRINGIFY(RAPIDJSON_MAJOR_VERSION.RAPIDJSON_MINOR_VERSION.RAPIDJSON_PATCH_VERSION) |
Version of RapidJSON in "<major>.<minor>.<patch>" string format. | |
#define | RAPIDJSON_NAMESPACE rapidjson |
provide custom rapidjson namespace More... | |
#define | RAPIDJSON_NO_INT64DEFINE |
Use external 64-bit integer types. More... | |
#define | RAPIDJSON_LITTLEENDIAN 0 |
Little endian machine. | |
#define | RAPIDJSON_BIGENDIAN 1 |
Big endian machine. | |
#define | RAPIDJSON_ENDIAN |
Endianness of the machine. More... | |
#define | RAPIDJSON_64BIT 0 |
Whether using 64-bit architecture. | |
#define | RAPIDJSON_ALIGN(x) ((x + 3u) & ~3u) |
Data alignment of the machine. More... | |
#define | RAPIDJSON_UINT64_C2(high32, low32) ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32)) |
Construct a 64-bit literal by a pair of 32-bit integer. More... | |
#define | RAPIDJSON_SIMD |
Enable SSE2/SSE4.2 optimization. More... | |
#define | RAPIDJSON_NO_SIZETYPEDEFINE |
User-provided SizeType definition. More... | |
#define | RAPIDJSON_ASSERT(x) assert(x) |
Assertion. More... | |
#define | RAPIDJSON_STATIC_ASSERT(x) |
(Internal) macro to check for conditions at compile-time More... | |
#define | RAPIDJSON_NEW(x) new x |
! customization point for global new | |
#define | RAPIDJSON_DELETE(x) delete x |
! customization point for global delete | |
Typedefs | |
typedef unsigned | rapidjson::SizeType |
Size type (for string lengths, array sizes, etc.) More... | |
typedef GenericStringStream < UTF8<> > | rapidjson::StringStream |
String stream with UTF8 encoding. | |
typedef GenericInsituStringStream < UTF8<> > | rapidjson::InsituStringStream |
Insitu string stream with UTF8 encoding. | |
Enumerations | |
enum | rapidjson::Type { rapidjson::kNullType = 0, rapidjson::kFalseType = 1, rapidjson::kTrueType = 2, rapidjson::kObjectType = 3, rapidjson::kArrayType = 4, rapidjson::kStringType = 5, rapidjson::kNumberType = 6 } |
Type of JSON value. More... | |
Functions | |
template<typename Stream , typename Ch > | |
void | rapidjson::PutN (Stream &stream, Ch c, size_t n) |
Put N copies of a character to a stream. | |
common definitions and configuration
#define RAPIDJSON_STATIC_ASSERT | ( | x | ) |
(Internal) macro to check for conditions at compile-time
x | compile-time condition |
#define RAPIDJSON_UINT64_C2 | ( | high32, | |
low32 | |||
) | ((static_cast<uint64_t>(high32) << 32) | static_cast<uint64_t>(low32)) |
Construct a 64-bit literal by a pair of 32-bit integer.
64-bit literal with or without ULL suffix is prone to compiler warnings. UINT64_C() is C macro which cause compilation problems. Use this macro to define 64-bit constants by a pair of 32-bit integer.