mirror of
https://github.com/esphome/esphome.git
synced 2025-10-16 15:37:51 +02:00
preen
This commit is contained in:
parent
d5ba16f13a
commit
9775274007
@ -168,13 +168,17 @@ template<typename T> class FixedVector {
|
||||
size_t size_{0};
|
||||
size_t capacity_{0};
|
||||
|
||||
// Helper to destroy elements and free memory
|
||||
void cleanup_() {
|
||||
if (data_ != nullptr) {
|
||||
// Manually destroy all elements
|
||||
// Helper to destroy all elements without freeing memory
|
||||
void destroy_elements_() {
|
||||
for (size_t i = 0; i < size_; i++) {
|
||||
data_[i].~T();
|
||||
}
|
||||
}
|
||||
|
||||
// Helper to destroy elements and free memory
|
||||
void cleanup_() {
|
||||
if (data_ != nullptr) {
|
||||
destroy_elements_();
|
||||
// Free raw memory
|
||||
::operator delete(data_);
|
||||
}
|
||||
@ -226,10 +230,7 @@ template<typename T> class FixedVector {
|
||||
|
||||
// Clear the vector (destroy all elements, reset size to 0, keep capacity)
|
||||
void clear() {
|
||||
// Manually destroy all elements
|
||||
for (size_t i = 0; i < size_; i++) {
|
||||
data_[i].~T();
|
||||
}
|
||||
destroy_elements_();
|
||||
size_ = 0;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user