2014-09-27 12:16:20 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <stddef.h>
|
2014-09-27 14:43:19 +02:00
|
|
|
#include "JsonNode.h"
|
2014-09-27 12:16:20 +02:00
|
|
|
|
|
|
|
class JsonObject;
|
2014-09-27 16:18:40 +02:00
|
|
|
class JsonValue;
|
2014-09-27 12:16:20 +02:00
|
|
|
struct JsonNode;
|
|
|
|
|
|
|
|
class JsonBuffer
|
|
|
|
{
|
|
|
|
friend class JsonObject;
|
|
|
|
|
|
|
|
public:
|
|
|
|
// virtual ~JsonBuffer() = 0;
|
|
|
|
|
|
|
|
JsonObject createObject();
|
2014-09-27 16:18:40 +02:00
|
|
|
JsonValue createValue();
|
|
|
|
|
2014-09-27 12:16:20 +02:00
|
|
|
protected:
|
2014-09-27 14:43:19 +02:00
|
|
|
virtual JsonNode* allocateNode() = 0;
|
|
|
|
|
|
|
|
private:
|
|
|
|
JsonNode* createNode(JsonNodeType type);
|
2014-09-27 12:16:20 +02:00
|
|
|
};
|
|
|
|
|