diff --git a/include/ArduinoJson/Internals/PlacementNew.hpp b/include/ArduinoJson/Internals/PlacementNew.hpp new file mode 100644 index 00000000..5039c708 --- /dev/null +++ b/include/ArduinoJson/Internals/PlacementNew.hpp @@ -0,0 +1,15 @@ +// Copyright Benoit Blanchon 2014 +// MIT License +// +// Arduino JSON library +// https://github.com/bblanchon/ArduinoJson + +#ifdef ARDUINO + +inline void *operator new(size_t, void *p) throw() { return p; } + +#else + +#include + +#endif \ No newline at end of file diff --git a/src/JsonArray.cpp b/src/JsonArray.cpp index 469105c9..9ec7da0d 100644 --- a/src/JsonArray.cpp +++ b/src/JsonArray.cpp @@ -6,11 +6,10 @@ #include "../include/ArduinoJson/JsonArray.hpp" -#include // required for placement new - +#include "../include/ArduinoJson/Internals/PlacementNew.hpp" +#include "../include/ArduinoJson/Internals/PrettyJsonWriter.hpp" #include "../include/ArduinoJson/JsonBuffer.hpp" #include "../include/ArduinoJson/JsonObject.hpp" -#include "../include/ArduinoJson/Internals/PrettyJsonWriter.hpp" using namespace ArduinoJson; using namespace ArduinoJson::Internals; diff --git a/src/JsonBuffer.cpp b/src/JsonBuffer.cpp index 35aa7b95..b88371c5 100644 --- a/src/JsonBuffer.cpp +++ b/src/JsonBuffer.cpp @@ -6,11 +6,10 @@ #include "../include/ArduinoJson/JsonBuffer.hpp" -#include // required for the placement new - #include "../include/ArduinoJson/JsonArray.hpp" #include "../include/ArduinoJson/JsonObject.hpp" #include "../include/ArduinoJson/JsonValue.hpp" +#include "../include/ArduinoJson/Internals/PlacementNew.hpp" #include "../include/ArduinoJson/Internals/JsonParser.hpp" using namespace ArduinoJson; diff --git a/src/JsonObject.cpp b/src/JsonObject.cpp index 4d02a3ed..37674e82 100644 --- a/src/JsonObject.cpp +++ b/src/JsonObject.cpp @@ -6,7 +6,6 @@ #include "../include/ArduinoJson/JsonObject.hpp" -#include // required for placement new #include // for strcmp #include "../include/ArduinoJson/JsonBuffer.hpp" @@ -14,6 +13,7 @@ #include "../include/ArduinoJson/JsonValue.hpp" #include "../include/ArduinoJson/Internals/PrettyJsonWriter.hpp" #include "../include/ArduinoJson/Internals/StringBuilder.hpp" +#include "../include/ArduinoJson/Internals/PlacementNew.hpp" using namespace ArduinoJson; using namespace ArduinoJson::Internals;