| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #pragma once
- #include "JsonBuffer.h"
- #include "JsonObject.h"
- template<int CAPACITY>
- class StaticJsonBuffer : public JsonBuffer
- {
- friend JsonObject;
- public:
-
- explicit StaticJsonBuffer()
- : _size(0)
- {
- }
- virtual ~StaticJsonBuffer() {}
- int capacity()
- {
- return CAPACITY;
- }
- int size()
- {
- return _size;
- }
- protected:
- virtual JsonNode* allocateNode()
- {
- if (_size >= CAPACITY) return 0;
- return &_buffer[_size++];
- }
- private:
- JsonNode _buffer[CAPACITY];
- int _size;
- };
|