// Copyright Benoit Blanchon 2014 // MIT License // // Arduino JSON library // https://github.com/bblanchon/ArduinoJson #pragma once #include "Node.hpp" namespace ArduinoJson { namespace Internals { template class NodeIterator { public: explicit NodeIterator(Node *node = NULL) : _node(node) {} T &operator*() const { return _node->content; } T *operator->() { return &_node->content; } bool operator==(const NodeIterator &other) const { return _node == other._node; } bool operator!=(const NodeIterator &other) const { return _node != other._node; } NodeIterator &operator++() { if (_node) _node = _node->next; return *this; } private: Node *_node; }; } }