mirror of
https://github.com/esphome/esphome.git
synced 2025-09-27 07:32:22 +01:00
preen
This commit is contained in:
@@ -20,18 +20,14 @@ void ComponentIterator::begin(bool include_internal) {
|
|||||||
template<typename Container>
|
template<typename Container>
|
||||||
void ComponentIterator::process_platform_item_(const Container &items,
|
void ComponentIterator::process_platform_item_(const Container &items,
|
||||||
bool (ComponentIterator::*on_item)(typename Container::value_type)) {
|
bool (ComponentIterator::*on_item)(typename Container::value_type)) {
|
||||||
// Since static_vector doesn't have size(), we need to iterate differently
|
if (this->at_ >= items.size()) {
|
||||||
size_t index = 0;
|
this->advance_platform_();
|
||||||
for (auto *item : items) {
|
} else {
|
||||||
if (index++ == this->at_) {
|
auto *item = items[this->at_];
|
||||||
if ((item->is_internal() && !this->include_internal_) || (this->*on_item)(item)) {
|
if ((item->is_internal() && !this->include_internal_) || (this->*on_item)(item)) {
|
||||||
this->at_++;
|
this->at_++;
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// If we get here, we've reached the end
|
|
||||||
this->advance_platform_();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ComponentIterator::advance_platform_() {
|
void ComponentIterator::advance_platform_() {
|
||||||
|
@@ -113,6 +113,8 @@ template<typename T, size_t N> class StaticVector {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
size_t size() const { return count_; }
|
||||||
|
|
||||||
// For range-based for loops
|
// For range-based for loops
|
||||||
iterator begin() { return data_.begin(); }
|
iterator begin() { return data_.begin(); }
|
||||||
iterator end() { return data_.begin() + count_; }
|
iterator end() { return data_.begin() + count_; }
|
||||||
|
Reference in New Issue
Block a user