mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Removed class JsonParserBase
This commit is contained in:
		| @@ -12,7 +12,9 @@ class JsonHashTable; | ||||
|  | ||||
| class JsonArray : public JsonObjectBase | ||||
| { | ||||
| 	friend class JsonParserBase; | ||||
| 	template <int N> | ||||
| 	friend class JsonParser; | ||||
|  | ||||
| 	friend class JsonHashTable; | ||||
|  | ||||
| public: | ||||
|   | ||||
| @@ -12,8 +12,10 @@ class JsonArray; | ||||
|  | ||||
| class JsonHashTable : public JsonObjectBase | ||||
| { | ||||
| 	template <int N> | ||||
| 	friend class JsonParser; | ||||
|  | ||||
| 	friend class JsonArray; | ||||
| 	friend class JsonParserBase; | ||||
|  | ||||
| public: | ||||
|  | ||||
|   | ||||
| @@ -1,24 +0,0 @@ | ||||
| /* | ||||
| * malloc-free JSON parser for Arduino | ||||
| * Benoit Blanchon 2014 - MIT License | ||||
| */ | ||||
|  | ||||
| #include "JsonParser.h" | ||||
|  | ||||
| JsonParserBase::JsonParserBase(jsmntok_t* tokens, int maxTokenCount) | ||||
| { | ||||
| 	this->maxTokenCount = maxTokenCount; | ||||
| 	this->tokens = tokens; | ||||
| } | ||||
|  | ||||
| jsmntok_t* JsonParserBase::parse(char* jsonString) | ||||
| {	 | ||||
| 	jsmn_parser parser; | ||||
|  | ||||
| 	jsmn_init(&parser); | ||||
|  | ||||
| 	if (JSMN_SUCCESS != jsmn_parse(&parser, jsonString, tokens, maxTokenCount)) | ||||
| 		return 0; | ||||
|  | ||||
| 	return tokens; | ||||
| } | ||||
							
								
								
									
										28
									
								
								JsonParser.h
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								JsonParser.h
									
									
									
									
									
								
							| @@ -9,7 +9,8 @@ | ||||
| #include "JsonHashTable.h" | ||||
| #include "JsonArray.h" | ||||
|  | ||||
| class JsonParserBase | ||||
| template <int N> | ||||
| class JsonParser | ||||
| { | ||||
| public: | ||||
|  | ||||
| @@ -23,30 +24,19 @@ public: | ||||
| 		return JsonHashTable(json, parse(json)); | ||||
| 	} | ||||
|  | ||||
| protected: | ||||
|  | ||||
| 	JsonParserBase(jsmntok_t* tokens, int maxTokenCount);	 | ||||
| 	 | ||||
| private: | ||||
|  | ||||
| 	jsmntok_t* parse(char* json); | ||||
|  | ||||
| 	int maxTokenCount; | ||||
| 	jsmntok_t* tokens; | ||||
| }; | ||||
|  | ||||
| template <int N> | ||||
| class JsonParser : public JsonParserBase | ||||
| 	jsmntok_t* parse(char* jsonString) | ||||
| 	{ | ||||
| public: | ||||
| 		jsmn_parser parser; | ||||
| 		jsmn_init(&parser); | ||||
|  | ||||
| 	JsonParser() | ||||
| 		: JsonParserBase(tokens, N) | ||||
| 	{ | ||||
| 		if (JSMN_SUCCESS != jsmn_parse(&parser, jsonString, tokens, N)) | ||||
| 			return 0; | ||||
|  | ||||
| 		return tokens; | ||||
| 	} | ||||
|  | ||||
| private: | ||||
| 	 | ||||
| 	jsmntok_t tokens[N]; | ||||
| }; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user