template <typename Element>
class RepeatedIterator
Defined at line 1626 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
STL-like iterator implementation for RepeatedField. You should not
refer to this class directly; use RepeatedField
<T
>::iterator instead.
Note: All of the iterator operators *must* be inlined to avoid performance
regressions. This is caused by the extern template declarations below (which
are required because of the RepeatedField extern template declarations). If
any of these functions aren't explicitly inlined (e.g. defined in the class),
the compiler isn't allowed to inline them.
Public Methods
void RepeatedIterator<Element> ()
Defined at line 1640 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
template <typename OtherElement, typename std::enable_if<std::is_convertible< OtherElement*, pointer>::value>::type* = nullptr>
void RepeatedIterator<Element> (const RepeatedIterator<OtherElement> & other)
Allows "upcasting" from RepeatedIterator
<T
**> to
RepeatedIterator
<const
T*const*>.
Defined at line 1647 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
reference operator* ()
dereferenceable
Defined at line 1652 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
pointer operator-> ()
Defined at line 1655 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator & operator++ ()
{inc,dec}rementable
Defined at line 1665 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator operator++ (int )
Defined at line 1669 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator & operator-- ()
Defined at line 1670 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator operator-- (int )
Defined at line 1674 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator & operator+= (difference_type d)
addable, subtractable
Defined at line 1705 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator operator+ (difference_type d)
Defined at line 1709 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator & operator-= (difference_type d)
Defined at line 1717 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
iterator operator- (difference_type d)
Defined at line 1721 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
reference operator[] (difference_type d)
indexable
Defined at line 1726 of file ../../third_party/protobuf/src/src/google/protobuf/repeated_field.h
Friends
template <typename OtherElement>
class RepeatedIterator
template <typename Element>
difference_type RepeatedIterator (iterator it1, iterator it2)
template <typename Element>
RepeatedIterator RepeatedIterator (const difference_type d, iterator it)
template <typename Element>
bool RepeatedIterator (const iterator & x, const iterator & y)
template <typename Element>
bool RepeatedIterator (const iterator & x, const iterator & y)
template <typename Element>
bool RepeatedIterator (const iterator & x, const iterator & y)
template <typename Element>
bool RepeatedIterator (const iterator & x, const iterator & y)
template <typename Element>
bool RepeatedIterator (const iterator & x, const iterator & y)
template <typename Element>
bool RepeatedIterator (const iterator & xconst iterator & y)