mirror of
https://github.com/Telecominfraproject/wlan-cloud-lib-cppkafka.git
synced 2025-11-02 11:37:50 +00:00
Changed iterator logic to capture header list by reference
This commit is contained in:
@@ -306,15 +306,13 @@ bool HeaderList<HeaderType>::empty() const {
|
||||
template <typename HeaderType>
|
||||
typename HeaderList<HeaderType>::Iterator
|
||||
HeaderList<HeaderType>::begin() const {
|
||||
return empty() ? Iterator(HeaderList<HeaderType>(), 0) :
|
||||
Iterator(make_non_owning(handle_.get()), 0);
|
||||
return Iterator(*this, 0);
|
||||
}
|
||||
|
||||
template <typename HeaderType>
|
||||
typename HeaderList<HeaderType>::Iterator
|
||||
HeaderList<HeaderType>::end() const {
|
||||
return empty() ? Iterator(HeaderList<HeaderType>(), size()) :
|
||||
Iterator(make_non_owning(handle_.get()), size());
|
||||
return Iterator(*this, size());
|
||||
}
|
||||
|
||||
template <typename HeaderType>
|
||||
|
||||
@@ -151,10 +151,9 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
HeaderIterator(HeaderListType headers,
|
||||
HeaderIterator(const HeaderListType& headers,
|
||||
size_t index)
|
||||
: header_list_(std::move(headers)),
|
||||
header_(header_list_.empty() ? HeaderType() : header_list_.at(index)),
|
||||
: header_list_(headers),
|
||||
index_(index) {
|
||||
}
|
||||
|
||||
@@ -169,7 +168,7 @@ private:
|
||||
other.get_value().get_size()));
|
||||
}
|
||||
|
||||
HeaderListType header_list_;
|
||||
const HeaderListType& header_list_;
|
||||
HeaderType header_;
|
||||
size_t index_;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user