Skip to content

Commit 9d0714e

Browse files
committed
Remove unused MemoryPool::_left
1 parent d8f3058 commit 9d0714e

File tree

1 file changed

+7
-30
lines changed

1 file changed

+7
-30
lines changed

src/ArduinoJson/Memory/MemoryPool.hpp

Lines changed: 7 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,6 @@ constexpr size_t sizeofString(size_t n) {
3636
return n + 1 + offsetof(StringNode, data);
3737
}
3838

39-
// _begin _end
40-
// v v
41-
// +-------------+--------------+--------------+
42-
// | strings... | (free) | ...variants |
43-
// +-------------+--------------+--------------+
44-
// ^ ^
45-
// _left _right
46-
4739
class MemoryPool {
4840
public:
4941
MemoryPool(size_t capa, Allocator* allocator = DefaultAllocator::instance())
@@ -65,10 +57,9 @@ class MemoryPool {
6557
_allocator = src._allocator;
6658
_begin = src._begin;
6759
_end = src._end;
68-
_left = src._left;
6960
_right = src._right;
7061
_overflowed = src._overflowed;
71-
src._begin = src._end = src._left = src._right = nullptr;
62+
src._begin = src._end = src._right = nullptr;
7263
_strings = src._strings;
7364
src._strings = nullptr;
7465
return *this;
@@ -97,7 +88,7 @@ class MemoryPool {
9788
}
9889

9990
size_t size() const {
100-
size_t total = size_t(_left - _begin + _end - _right);
91+
size_t total = size_t(_end - _right);
10192
for (auto node = _strings; node; node = node->next)
10293
total += sizeofString(node->length);
10394
return total;
@@ -177,14 +168,13 @@ class MemoryPool {
177168
}
178169

179170
void clear() {
180-
_left = _begin;
181171
_right = _end;
182172
_overflowed = false;
183173
deallocAllStrings();
184174
}
185175

186176
bool canAlloc(size_t bytes) const {
187-
return _left + bytes <= _right;
177+
return _begin + bytes <= _right;
188178
}
189179

190180
bool owns(void* p) const {
@@ -213,19 +203,8 @@ class MemoryPool {
213203
}
214204

215205
private:
216-
// Squash the free space between strings and variants
217-
//
218-
// _begin _end
219-
// v v
220-
// +-------------+--------------+
221-
// | strings... | ...variants |
222-
// +-------------+--------------+
223-
// ^
224-
// _left _right
225-
//
226-
// This funcion is called before a realloc.
227206
ptrdiff_t squash() {
228-
char* new_right = addPadding(_left);
207+
char* new_right = addPadding(_begin);
229208
if (new_right >= _right)
230209
return 0;
231210

@@ -242,14 +221,12 @@ class MemoryPool {
242221
// This funcion is called after a realloc.
243222
void movePointers(ptrdiff_t offset) {
244223
_begin += offset;
245-
_left += offset;
246224
_right += offset;
247225
_end += offset;
248226
}
249227

250228
void checkInvariants() {
251-
ARDUINOJSON_ASSERT(_begin <= _left);
252-
ARDUINOJSON_ASSERT(_left <= _right);
229+
ARDUINOJSON_ASSERT(_begin <= _right);
253230
ARDUINOJSON_ASSERT(_right <= _end);
254231
ARDUINOJSON_ASSERT(isAligned(_right));
255232
}
@@ -278,7 +255,7 @@ class MemoryPool {
278255

279256
void allocPool(size_t capa) {
280257
auto buf = capa ? reinterpret_cast<char*>(_allocator->allocate(capa)) : 0;
281-
_begin = _left = buf;
258+
_begin = buf;
282259
_end = _right = buf ? buf + capa : 0;
283260
ARDUINOJSON_ASSERT(isAligned(_begin));
284261
ARDUINOJSON_ASSERT(isAligned(_right));
@@ -291,7 +268,7 @@ class MemoryPool {
291268
}
292269

293270
Allocator* _allocator;
294-
char *_begin, *_left, *_right, *_end;
271+
char *_begin, *_right, *_end;
295272
bool _overflowed;
296273
StringNode* _strings = nullptr;
297274
};

0 commit comments

Comments
 (0)