mirror of
				https://github.com/Tencent/rapidjson.git
				synced 2025-10-28 19:52:02 +01:00 
			
		
		
		
	Add simplereader, simplewriter examples.
Also modify premake to add all projects in example folder.
This commit is contained in:
		| @@ -156,32 +156,10 @@ solution "example" | |||||||
| 	configuration "gmake" | 	configuration "gmake" | ||||||
| 		buildoptions "-Werror -Wall -Wextra -Weffc++ -Wswitch-default" | 		buildoptions "-Werror -Wall -Wextra -Weffc++ -Wswitch-default" | ||||||
|  |  | ||||||
| 	project "condense" | 	local examplepaths = os.matchdirs("../example/*") | ||||||
| 		kind "ConsoleApp" | 	for _, examplepath in ipairs(examplepaths) do | ||||||
| 		files "../example/condense/*" | 		project(path.getname(examplepath)) | ||||||
| 		setTargetObjDir("../bin") | 			kind "ConsoleApp" | ||||||
|  | 			files(examplepath .. "/*") | ||||||
| 	project "pretty" | 			setTargetObjDir("../bin") | ||||||
| 		kind "ConsoleApp" | 	end | ||||||
| 		files "../example/pretty/*" |  | ||||||
| 		setTargetObjDir("../bin") |  | ||||||
|  |  | ||||||
| 	project "prettyauto" |  | ||||||
| 		kind "ConsoleApp" |  | ||||||
| 		files "../example/prettyauto/*" |  | ||||||
| 		setTargetObjDir("../bin") |  | ||||||
|  |  | ||||||
| 	project "tutorial" |  | ||||||
| 		kind "ConsoleApp" |  | ||||||
| 		files "../example/tutorial/*" |  | ||||||
| 		setTargetObjDir("../bin") |  | ||||||
|  |  | ||||||
| 	project "serialize" |  | ||||||
| 		kind "ConsoleApp" |  | ||||||
| 		files "../example/serialize/*" |  | ||||||
| 		setTargetObjDir("../bin") |  | ||||||
|  |  | ||||||
| 	project "simpledom" |  | ||||||
| 		kind "ConsoleApp" |  | ||||||
| 		files "../example/simpledom/*" |  | ||||||
| 		setTargetObjDir("../bin") |  | ||||||
|   | |||||||
							
								
								
									
										32
									
								
								example/simplereader/simplereader.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								example/simplereader/simplereader.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | #include "rapidjson/reader.h" | ||||||
|  | #include <iostream> | ||||||
|  |  | ||||||
|  | using namespace rapidjson; | ||||||
|  | using namespace std; | ||||||
|  |  | ||||||
|  | struct MyHandler { | ||||||
|  | 	bool Null() { cout << "Null()" << endl; return true; } | ||||||
|  | 	bool Bool(bool b) { cout << "Bool(" << boolalpha << b << ")" << endl; return true; } | ||||||
|  | 	bool Int(int i) { cout << "Int(" << i << ")" << endl; return true; } | ||||||
|  | 	bool Uint(unsigned u) { cout << "Uint(" << u << ")" << endl; return true; } | ||||||
|  | 	bool Int64(int64_t i) { cout << "Int64(" << i << ")" << endl; return true; } | ||||||
|  | 	bool Uint64(uint64_t u) { cout << "Uint64(" << u << ")" << endl; return true; } | ||||||
|  | 	bool Double(double d) { cout << "Double(" << d << ")" << endl; return true; } | ||||||
|  |     bool String(const char* str, SizeType length, bool copy) {  | ||||||
|  | 		cout << "String(" << str << ", " << length << ", " << boolalpha << copy << ")" << endl; | ||||||
|  | 		return true; | ||||||
|  | 	} | ||||||
|  | 	bool StartObject() { cout << "StartObject()" << endl; return true; } | ||||||
|  | 	bool EndObject(SizeType memberCount) { cout << "EndObject(" << memberCount << ")" << endl; return true; } | ||||||
|  | 	bool StartArray() { cout << "StartArray()" << endl; return true; } | ||||||
|  | 	bool EndArray(SizeType elementCount) { cout << "EndArray(" << elementCount << ")" << endl; return true; } | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | void main() { | ||||||
|  |     const char json[] = " { \"hello\" : \"world\", \"t\" : true , \"f\" : false, \"n\": null, \"i\":123, \"pi\": 3.1416, \"a\":[1, 2, 3, 4] } "; | ||||||
|  |  | ||||||
|  |     MyHandler handler; | ||||||
|  |     Reader reader; | ||||||
|  |     StringStream ss(json); | ||||||
|  | 	reader.Parse(ss, handler); | ||||||
|  | } | ||||||
							
								
								
									
										33
									
								
								example/simplewriter/simplewriter.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								example/simplewriter/simplewriter.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | #include "rapidjson/writer.h" | ||||||
|  | #include "rapidjson/stringbuffer.h" | ||||||
|  | #include <iostream> | ||||||
|  |  | ||||||
|  | using namespace rapidjson; | ||||||
|  | using namespace std; | ||||||
|  |  | ||||||
|  | void main() { | ||||||
|  |     StringBuffer s; | ||||||
|  |     Writer<StringBuffer> writer(s); | ||||||
|  |      | ||||||
|  |     writer.StartObject(); | ||||||
|  |     writer.String("hello"); | ||||||
|  |     writer.String("world"); | ||||||
|  |     writer.String("t"); | ||||||
|  |     writer.Bool(true); | ||||||
|  |     writer.String("f"); | ||||||
|  |     writer.Bool(false); | ||||||
|  |     writer.String("n"); | ||||||
|  |     writer.Null(); | ||||||
|  |     writer.String("i"); | ||||||
|  |     writer.Uint(123); | ||||||
|  |     writer.String("pi"); | ||||||
|  |     writer.Double(3.1416); | ||||||
|  |     writer.String("a"); | ||||||
|  |     writer.StartArray(); | ||||||
|  |     for (unsigned i = 0; i < 4; i++) | ||||||
|  |         writer.Uint(i); | ||||||
|  |     writer.EndArray(); | ||||||
|  |     writer.EndObject(); | ||||||
|  |  | ||||||
|  |     cout << s.GetString() << endl; | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user
	 Milo Yip
					Milo Yip