Switch away from std::iterator in BalsaHeaders
`std::iterator` was deprecated in C++17, in favor of just listing out all the type aliases one by one. This silences some warnings when building QUICHE standalone.
PiperOrigin-RevId: 698780451
diff --git a/quiche/balsa/balsa_headers.h b/quiche/balsa/balsa_headers.h
index 51599c0..2e06d1b 100644
--- a/quiche/balsa/balsa_headers.h
+++ b/quiche/balsa/balsa_headers.h
@@ -1179,10 +1179,14 @@
// Base class for iterating the headers in a BalsaHeaders object, returning a
// pair of string_view's for each header.
-class QUICHE_EXPORT BalsaHeaders::iterator_base
- : public std::iterator<std::forward_iterator_tag,
- std::pair<absl::string_view, absl::string_view>> {
+class QUICHE_EXPORT BalsaHeaders::iterator_base {
public:
+ using iterator_category = std::forward_iterator_tag;
+ using value_type = std::pair<absl::string_view, absl::string_view>;
+ using difference_type = std::ptrdiff_t;
+ using pointer = value_type*;
+ using reference = value_type&;
+
iterator_base() : headers_(nullptr), idx_(0) {}
std::pair<absl::string_view, absl::string_view>& operator*() const {