// Copyright Benoit Blanchon 2014-2017 // MIT License // // Arduino JSON library // https://github.com/bblanchon/ArduinoJson // If you like this project, please add a star! #pragma once #include "../TypeTraits/EnableIf.hpp" #include "../TypeTraits/IsBaseOf.hpp" #include "../TypeTraits/RemoveReference.hpp" namespace ArduinoJson { namespace Internals { struct StdStreamFuncs { class Iterator { Stream& _stream; public: Iterator(Stream& stream) : _stream(stream) {} char next() { int n = _stream.read(); return n >= 0 ? static_cast(n) : '\0'; } }; }; template struct StringFuncs::type>::value>::type> : StdStreamFuncs {}; } }