forked from bblanchon/ArduinoJson
ResourceManager: rename string functions
This commit is contained in:
@ -87,30 +87,30 @@ class ResourceManager {
|
||||
return node;
|
||||
}
|
||||
|
||||
void addStringToList(StringNode* node) {
|
||||
void saveString(StringNode* node) {
|
||||
stringPool_.add(node);
|
||||
}
|
||||
|
||||
template <typename TAdaptedString>
|
||||
StringNode* findString(const TAdaptedString& str) const {
|
||||
StringNode* getString(const TAdaptedString& str) const {
|
||||
return stringPool_.get(str);
|
||||
}
|
||||
|
||||
StringNode* allocString(size_t length) {
|
||||
StringNode* createString(size_t length) {
|
||||
auto node = StringNode::create(length, allocator_);
|
||||
if (!node)
|
||||
overflowed_ = true;
|
||||
return node;
|
||||
}
|
||||
|
||||
StringNode* reallocString(StringNode* node, size_t length) {
|
||||
StringNode* resizeString(StringNode* node, size_t length) {
|
||||
node = StringNode::resize(node, length, allocator_);
|
||||
if (!node)
|
||||
overflowed_ = true;
|
||||
return node;
|
||||
}
|
||||
|
||||
void deallocString(StringNode* node) {
|
||||
void destroyString(StringNode* node) {
|
||||
StringNode::destroy(node, allocator_);
|
||||
}
|
||||
|
||||
|
@ -16,22 +16,22 @@ class StringBuilder {
|
||||
|
||||
~StringBuilder() {
|
||||
if (node_)
|
||||
resources_->deallocString(node_);
|
||||
resources_->destroyString(node_);
|
||||
}
|
||||
|
||||
void startString() {
|
||||
size_ = 0;
|
||||
if (!node_)
|
||||
node_ = resources_->allocString(initialCapacity);
|
||||
node_ = resources_->createString(initialCapacity);
|
||||
}
|
||||
|
||||
StringNode* save() {
|
||||
ARDUINOJSON_ASSERT(node_ != nullptr);
|
||||
node_->data[size_] = 0;
|
||||
StringNode* node = resources_->findString(adaptString(node_->data, size_));
|
||||
StringNode* node = resources_->getString(adaptString(node_->data, size_));
|
||||
if (!node) {
|
||||
node = resources_->reallocString(node_, size_);
|
||||
resources_->addStringToList(node);
|
||||
node = resources_->resizeString(node_, size_);
|
||||
resources_->saveString(node);
|
||||
node_ = nullptr; // next time we need a new string
|
||||
} else {
|
||||
node->references++;
|
||||
@ -51,7 +51,7 @@ class StringBuilder {
|
||||
|
||||
void append(char c) {
|
||||
if (node_ && size_ == node_->length)
|
||||
node_ = resources_->reallocString(node_, size_ * 2U + 1);
|
||||
node_ = resources_->resizeString(node_, size_ * 2U + 1);
|
||||
if (node_)
|
||||
node_->data[size_++] = c;
|
||||
}
|
||||
|
Reference in New Issue
Block a user