// ArduinoJson - https://arduinojson.org // Copyright Benoit Blanchon 2014-2021 // MIT License #pragma once #include "lib/ArduinoJson/Namespace.hpp" #include // for size_t namespace ARDUINOJSON_NAMESPACE { // The default reader is a simple wrapper for Readers that are not copiable template struct Reader { public: Reader(TSource& source) : _source(&source) {} int read() { return _source->read(); } size_t readBytes(char* buffer, size_t length) { return _source->readBytes(buffer, length); } private: TSource* _source; }; template struct BoundedReader { // no default implementation because we need to pass the size to the // constructor }; } // namespace ARDUINOJSON_NAMESPACE #include "lib/ArduinoJson/Deserialization/Readers/IteratorReader.hpp" #include "lib/ArduinoJson/Deserialization/Readers/RamReader.hpp" #include "lib/ArduinoJson/Deserialization/Readers/VariantReader.hpp" #if ARDUINOJSON_ENABLE_ARDUINO_STREAM #include "lib/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp" #endif #if ARDUINOJSON_ENABLE_ARDUINO_STRING #include "lib/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp" #endif #if ARDUINOJSON_ENABLE_PROGMEM #include "lib/ArduinoJson/Deserialization/Readers/FlashReader.hpp" #endif #if ARDUINOJSON_ENABLE_STD_STREAM #include "lib/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp" #endif