mirror of
https://github.com/eledio-devices/thirdparty-ArduinoJson.git
synced 2025-11-01 00:38:27 +01:00
40 lines
627 B
C++
40 lines
627 B
C++
// ArduinoJson - arduinojson.org
|
|
// Copyright Benoit Blanchon 2014-2020
|
|
// MIT License
|
|
|
|
#pragma once
|
|
|
|
#include <ArduinoJson/Namespace.hpp>
|
|
|
|
namespace ARDUINOJSON_NAMESPACE {
|
|
|
|
class StringMover {
|
|
public:
|
|
StringMover(char* ptr) : _writePtr(ptr) {}
|
|
|
|
void startString(MemoryPool*) {
|
|
_startPtr = _writePtr;
|
|
}
|
|
|
|
const char* save(MemoryPool*) const {
|
|
return _startPtr;
|
|
}
|
|
|
|
void append(char c) {
|
|
*_writePtr++ = c;
|
|
}
|
|
|
|
bool isValid() const {
|
|
return true;
|
|
}
|
|
|
|
const char* c_str() const {
|
|
return _startPtr;
|
|
}
|
|
|
|
private:
|
|
char* _writePtr;
|
|
char* _startPtr;
|
|
};
|
|
} // namespace ARDUINOJSON_NAMESPACE
|