]> git.proxmox.com Git - ceph.git/blob - ceph/src/rapidjson/example/simplewriter/simplewriter.cpp
update sources to v12.1.0
[ceph.git] / ceph / src / rapidjson / example / simplewriter / simplewriter.cpp
1 #include "rapidjson/writer.h"
2 #include "rapidjson/stringbuffer.h"
3 #include <iostream>
4
5 using namespace rapidjson;
6 using namespace std;
7
8 int main() {
9 StringBuffer s;
10 Writer<StringBuffer> writer(s);
11
12 writer.StartObject(); // Between StartObject()/EndObject(),
13 writer.Key("hello"); // output a key,
14 writer.String("world"); // follow by a value.
15 writer.Key("t");
16 writer.Bool(true);
17 writer.Key("f");
18 writer.Bool(false);
19 writer.Key("n");
20 writer.Null();
21 writer.Key("i");
22 writer.Uint(123);
23 writer.Key("pi");
24 writer.Double(3.1416);
25 writer.Key("a");
26 writer.StartArray(); // Between StartArray()/EndArray(),
27 for (unsigned i = 0; i < 4; i++)
28 writer.Uint(i); // all values are elements of the array.
29 writer.EndArray();
30 writer.EndObject();
31
32 // {"hello":"world","t":true,"f":false,"n":null,"i":123,"pi":3.1416,"a":[0,1,2,3]}
33 cout << s.GetString() << endl;
34
35 return 0;
36 }