diff --git a/src/ArduinoJson.hpp b/src/ArduinoJson.hpp index 83830e2d..c06d0116 100644 --- a/src/ArduinoJson.hpp +++ b/src/ArduinoJson.hpp @@ -5,11 +5,9 @@ #pragma once #include "ArduinoJson/DynamicJsonArray.hpp" -#include "ArduinoJson/DynamicJsonBuffer.hpp" #include "ArduinoJson/DynamicJsonObject.hpp" #include "ArduinoJson/DynamicJsonVariant.hpp" #include "ArduinoJson/StaticJsonArray.hpp" -#include "ArduinoJson/StaticJsonBuffer.hpp" #include "ArduinoJson/StaticJsonObject.hpp" #include "ArduinoJson/StaticJsonVariant.hpp" #include "ArduinoJson/deserializeJson.hpp" diff --git a/src/ArduinoJson/Data/List.hpp b/src/ArduinoJson/Data/List.hpp index f1e9b07b..14215966 100644 --- a/src/ArduinoJson/Data/List.hpp +++ b/src/ArduinoJson/Data/List.hpp @@ -4,7 +4,7 @@ #pragma once -#include "../JsonBuffer.hpp" +#include "../Memory/JsonBuffer.hpp" #include "ListConstIterator.hpp" #include "ListIterator.hpp" diff --git a/src/ArduinoJson/Data/ListNode.hpp b/src/ArduinoJson/Data/ListNode.hpp index c0907120..f6e2a5e2 100644 --- a/src/ArduinoJson/Data/ListNode.hpp +++ b/src/ArduinoJson/Data/ListNode.hpp @@ -6,7 +6,7 @@ #include // for NULL -#include "JsonBufferAllocated.hpp" +#include "../Memory/JsonBufferAllocated.hpp" namespace ArduinoJson { namespace Internals { @@ -20,5 +20,5 @@ struct ListNode : public Internals::JsonBufferAllocated { ListNode *next; T content; }; -} -} +} // namespace Internals +} // namespace ArduinoJson diff --git a/src/ArduinoJson/Data/ValueSaver.hpp b/src/ArduinoJson/Data/ValueSaver.hpp index 9750f1ac..4e1904d6 100644 --- a/src/ArduinoJson/Data/ValueSaver.hpp +++ b/src/ArduinoJson/Data/ValueSaver.hpp @@ -4,8 +4,8 @@ #pragma once -#include "../JsonBuffer.hpp" #include "../JsonVariant.hpp" +#include "../Memory/JsonBuffer.hpp" #include "../StringTraits/StringTraits.hpp" #include "../TypeTraits/EnableIf.hpp" @@ -48,5 +48,5 @@ struct ValueSaver< return true; } }; -} -} +} // namespace Internals +} // namespace ArduinoJson diff --git a/src/ArduinoJson/Deserialization/JsonParser.hpp b/src/ArduinoJson/Deserialization/JsonParser.hpp index cbc7df6f..d4a9c8f4 100644 --- a/src/ArduinoJson/Deserialization/JsonParser.hpp +++ b/src/ArduinoJson/Deserialization/JsonParser.hpp @@ -4,9 +4,9 @@ #pragma once -#include "../JsonBuffer.hpp" #include "../JsonError.hpp" #include "../JsonVariant.hpp" +#include "../Memory/JsonBuffer.hpp" #include "../TypeTraits/IsConst.hpp" #include "StringWriter.hpp" diff --git a/src/ArduinoJson/DynamicJsonArray.hpp b/src/ArduinoJson/DynamicJsonArray.hpp index 216402f1..0ec0d80e 100644 --- a/src/ArduinoJson/DynamicJsonArray.hpp +++ b/src/ArduinoJson/DynamicJsonArray.hpp @@ -4,8 +4,8 @@ #pragma once -#include "DynamicJsonBuffer.hpp" #include "JsonArray.hpp" +#include "Memory/DynamicJsonBuffer.hpp" namespace ArduinoJson { class DynamicJsonArray : public JsonArray { diff --git a/src/ArduinoJson/DynamicJsonObject.hpp b/src/ArduinoJson/DynamicJsonObject.hpp index c602e791..5e40ba40 100644 --- a/src/ArduinoJson/DynamicJsonObject.hpp +++ b/src/ArduinoJson/DynamicJsonObject.hpp @@ -4,8 +4,8 @@ #pragma once -#include "DynamicJsonBuffer.hpp" #include "JsonObject.hpp" +#include "Memory/DynamicJsonBuffer.hpp" namespace ArduinoJson { class DynamicJsonObject : public JsonObject { diff --git a/src/ArduinoJson/DynamicJsonVariant.hpp b/src/ArduinoJson/DynamicJsonVariant.hpp index 32e22889..ccc11042 100644 --- a/src/ArduinoJson/DynamicJsonVariant.hpp +++ b/src/ArduinoJson/DynamicJsonVariant.hpp @@ -4,8 +4,8 @@ #pragma once -#include "DynamicJsonBuffer.hpp" #include "JsonVariant.hpp" +#include "Memory/DynamicJsonBuffer.hpp" namespace ArduinoJson { diff --git a/src/ArduinoJson/JsonArray.hpp b/src/ArduinoJson/JsonArray.hpp index c050cf7e..2a77cf81 100644 --- a/src/ArduinoJson/JsonArray.hpp +++ b/src/ArduinoJson/JsonArray.hpp @@ -4,11 +4,11 @@ #pragma once -#include "Data/JsonBufferAllocated.hpp" #include "Data/List.hpp" #include "Data/ReferenceType.hpp" #include "Data/ValueSaver.hpp" #include "JsonVariant.hpp" +#include "Memory/JsonBufferAllocated.hpp" #include "StringTraits/StringTraits.hpp" #include "TypeTraits/EnableIf.hpp" #include "TypeTraits/IsArray.hpp" @@ -34,7 +34,7 @@ class JsonArray : public Internals::ReferenceType, public Internals::List, public Internals::JsonBufferAllocated { public: - explicit JsonArray(JsonBuffer *buf) throw() + explicit JsonArray(Internals::JsonBuffer *buf) throw() : Internals::List(buf) {} // Gets the value at the specified index diff --git a/src/ArduinoJson/JsonObject.hpp b/src/ArduinoJson/JsonObject.hpp index 502cc038..8c432c44 100644 --- a/src/ArduinoJson/JsonObject.hpp +++ b/src/ArduinoJson/JsonObject.hpp @@ -4,11 +4,11 @@ #pragma once -#include "Data/JsonBufferAllocated.hpp" #include "Data/List.hpp" #include "Data/ReferenceType.hpp" #include "Data/ValueSaver.hpp" #include "JsonPair.hpp" +#include "Memory/JsonBufferAllocated.hpp" #include "StringTraits/StringTraits.hpp" #include "TypeTraits/EnableIf.hpp" #include "TypeTraits/IsArray.hpp" @@ -37,7 +37,7 @@ class JsonObject : public Internals::ReferenceType, public: // Create an empty JsonArray attached to the specified JsonBuffer. // You should not use this constructor directly. - explicit JsonObject(JsonBuffer* buf) throw() + explicit JsonObject(Internals::JsonBuffer* buf) throw() : Internals::List(buf) {} // Gets or sets the value associated with the specified key. diff --git a/src/ArduinoJson/DynamicJsonBuffer.hpp b/src/ArduinoJson/Memory/DynamicJsonBuffer.hpp similarity index 100% rename from src/ArduinoJson/DynamicJsonBuffer.hpp rename to src/ArduinoJson/Memory/DynamicJsonBuffer.hpp diff --git a/src/ArduinoJson/JsonBuffer.hpp b/src/ArduinoJson/Memory/JsonBuffer.hpp similarity index 80% rename from src/ArduinoJson/JsonBuffer.hpp rename to src/ArduinoJson/Memory/JsonBuffer.hpp index 1bd434ce..dedf2e38 100644 --- a/src/ArduinoJson/JsonBuffer.hpp +++ b/src/ArduinoJson/Memory/JsonBuffer.hpp @@ -8,21 +8,16 @@ #include // for uint8_t #include -#include "Data/NonCopyable.hpp" -#include "JsonVariant.hpp" -#include "TypeTraits/EnableIf.hpp" -#include "TypeTraits/IsArray.hpp" +#include "../Configuration.hpp" +#include "../Polyfills/NonCopyable.hpp" +#include "../Polyfills/attributes.hpp" namespace ArduinoJson { -class JsonArray; -class JsonObject; - -// Entry point for using the library. -// +namespace Internals { // Handle the memory management (done in derived classes) and calls the parser. // This abstract class is implemented by StaticJsonBuffer which implements a // fixed memory allocation. -class JsonBuffer : Internals::NonCopyable { +class JsonBuffer : NonCopyable { public: // Allocates n bytes in the JsonBuffer. // Return a pointer to the allocated memory or NULL if allocation fails. @@ -44,4 +39,5 @@ class JsonBuffer : Internals::NonCopyable { #endif } }; +} // namespace Internals } // namespace ArduinoJson diff --git a/src/ArduinoJson/Data/JsonBufferAllocated.hpp b/src/ArduinoJson/Memory/JsonBufferAllocated.hpp similarity index 82% rename from src/ArduinoJson/Data/JsonBufferAllocated.hpp rename to src/ArduinoJson/Memory/JsonBufferAllocated.hpp index 443aae4d..4712ccb1 100644 --- a/src/ArduinoJson/Data/JsonBufferAllocated.hpp +++ b/src/ArduinoJson/Memory/JsonBufferAllocated.hpp @@ -4,7 +4,7 @@ #pragma once -#include "../JsonBuffer.hpp" +#include "JsonBuffer.hpp" namespace ArduinoJson { namespace Internals { @@ -18,5 +18,5 @@ class JsonBufferAllocated { void operator delete(void *, JsonBuffer *)throw(); }; -} -} +} // namespace Internals +} // namespace ArduinoJson diff --git a/src/ArduinoJson/StaticJsonBuffer.hpp b/src/ArduinoJson/Memory/StaticJsonBuffer.hpp similarity index 98% rename from src/ArduinoJson/StaticJsonBuffer.hpp rename to src/ArduinoJson/Memory/StaticJsonBuffer.hpp index dd13dfa9..237221d4 100644 --- a/src/ArduinoJson/StaticJsonBuffer.hpp +++ b/src/ArduinoJson/Memory/StaticJsonBuffer.hpp @@ -4,8 +4,8 @@ #pragma once +#include "../TypeTraits/Max.hpp" #include "JsonBuffer.hpp" -#include "TypeTraits/Max.hpp" namespace ArduinoJson { namespace Internals { diff --git a/src/ArduinoJson/Data/NonCopyable.hpp b/src/ArduinoJson/Polyfills/NonCopyable.hpp similarity index 100% rename from src/ArduinoJson/Data/NonCopyable.hpp rename to src/ArduinoJson/Polyfills/NonCopyable.hpp diff --git a/src/ArduinoJson/StaticJsonArray.hpp b/src/ArduinoJson/StaticJsonArray.hpp index 6ace2d69..25bd8b60 100644 --- a/src/ArduinoJson/StaticJsonArray.hpp +++ b/src/ArduinoJson/StaticJsonArray.hpp @@ -5,7 +5,7 @@ #pragma once #include "JsonArray.hpp" -#include "StaticJsonBuffer.hpp" +#include "Memory/StaticJsonBuffer.hpp" namespace ArduinoJson { diff --git a/src/ArduinoJson/StaticJsonObject.hpp b/src/ArduinoJson/StaticJsonObject.hpp index c46a97a3..ae5538f3 100644 --- a/src/ArduinoJson/StaticJsonObject.hpp +++ b/src/ArduinoJson/StaticJsonObject.hpp @@ -5,7 +5,7 @@ #pragma once #include "JsonObject.hpp" -#include "StaticJsonBuffer.hpp" +#include "Memory/StaticJsonBuffer.hpp" namespace ArduinoJson { diff --git a/src/ArduinoJson/StaticJsonVariant.hpp b/src/ArduinoJson/StaticJsonVariant.hpp index e565b185..4d9a7486 100644 --- a/src/ArduinoJson/StaticJsonVariant.hpp +++ b/src/ArduinoJson/StaticJsonVariant.hpp @@ -5,7 +5,7 @@ #pragma once #include "JsonVariant.hpp" -#include "StaticJsonBuffer.hpp" +#include "Memory/StaticJsonBuffer.hpp" namespace ArduinoJson {