diff --git a/include/ArduinoJson/JsonObject.hpp b/include/ArduinoJson/JsonObject.hpp index f13d5a15..851a97f8 100644 --- a/include/ArduinoJson/JsonObject.hpp +++ b/include/ArduinoJson/JsonObject.hpp @@ -6,10 +6,10 @@ #pragma once +#include "Internals/JsonIterator.hpp" +#include "Internals/JsonObjectNode.hpp" #include "Internals/JsonPrintable.hpp" #include "Internals/ReferenceType.hpp" -#include "JsonObjectConstIterator.hpp" -#include "JsonObjectIterator.hpp" #define JSON_OBJECT_SIZE(NUMBER_OF_ELEMENTS) \ (sizeof(JsonObject) + \ @@ -27,8 +27,9 @@ class JsonObject : public Internals::JsonPrintable, public: typedef const char *key_type; typedef JsonPair value_type; - typedef JsonObjectIterator iterator; - typedef JsonObjectConstIterator const_iterator; + typedef Internals::JsonIterator iterator; + typedef Internals::JsonIterator + const_iterator; bool success() const { return _buffer != NULL; } int size() const; diff --git a/include/ArduinoJson/JsonObjectConstIterator.hpp b/include/ArduinoJson/JsonObjectConstIterator.hpp deleted file mode 100644 index a41208e2..00000000 --- a/include/ArduinoJson/JsonObjectConstIterator.hpp +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright Benoit Blanchon 2014 -// MIT License -// -// Arduino JSON library -// https://github.com/bblanchon/ArduinoJson - -#pragma once - -#include "Internals/JsonObjectNode.hpp" - -namespace ArduinoJson { - -class JsonObjectConstIterator { - public: - explicit JsonObjectConstIterator(Internals::JsonObjectNode *node) - : _node(node) {} - - const JsonPair &operator*() { return _node->content; } - const JsonPair *operator->() { return &_node->content; } - - bool operator==(const JsonObjectConstIterator &other) const { - return _node == other._node; - } - - bool operator!=(const JsonObjectConstIterator &other) const { - return _node != other._node; - } - - JsonObjectConstIterator &operator++() { - if (_node) _node = _node->next; - return *this; - } - - private: - Internals::JsonObjectNode *_node; -}; -} diff --git a/include/ArduinoJson/JsonObjectIterator.hpp b/include/ArduinoJson/JsonObjectIterator.hpp deleted file mode 100644 index 94576627..00000000 --- a/include/ArduinoJson/JsonObjectIterator.hpp +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright Benoit Blanchon 2014 -// MIT License -// -// Arduino JSON library -// https://github.com/bblanchon/ArduinoJson - -#pragma once - -#include "Internals/JsonObjectNode.hpp" - -namespace ArduinoJson { - -class JsonObjectIterator { - public: - explicit JsonObjectIterator(Internals::JsonObjectNode *node) : _node(node) {} - - JsonPair &operator*() { return _node->content; } - JsonPair *operator->() { return &_node->content; } - - bool operator==(const JsonObjectIterator &other) const { - return _node == other._node; - } - - bool operator!=(const JsonObjectIterator &other) const { - return _node != other._node; - } - - JsonObjectIterator &operator++() { - if (_node) _node = _node->next; - return *this; - } - - private: - Internals::JsonObjectNode *_node; -}; -}