blob: e42380749c030d1a5f0dbef68cbb34b455b10a78 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
RapidJSON is a JSON parser and generator for C++. It was inspired by
RapidXml.
Features:
- RapidJSON is small but complete. It supports both SAX and DOM
style API. The SAX parser is only a half thousand lines of code.
- RapidJSON is fast. Its performance can be comparable to strlen().
It also optionally supports SSE2/SSE4.2 for acceleration.
- RapidJSON is self-contained and header-only. It does not depend on
external libraries such as BOOST. It even does not depend on STL.
- RapidJSON is memory-friendly. Each JSON value occupies exactly 16
bytes for most 32/64-bit machines (excluding text string). By
default it uses a fast memory allocator, and the parser allocates
memory compactly during parsing.
- RapidJSON is Unicode-friendly. It supports UTF-8, UTF-16, UTF-32
(LE & BE), and their detection, validation and transcoding
internally. For example, you can read a UTF-8 file and let RapidJSON
transcode the JSON strings into UTF-16 in the DOM. It also supports
surrogates and "\u0000" (null character).
|