diff options
author | Jisi Liu <liujisi@google.com> | 2017-08-21 10:39:27 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-21 10:39:27 -0700 |
commit | ba4e54724d2e6a1881c4fe88664d81fbacaf8c08 (patch) | |
tree | 5451ab616f035b92d006e51ec01b4c0dabb3f6d0 /src/google/protobuf/map.h | |
parent | 472f700884a2cd4e9b621c5e4b706a9b6de7c870 (diff) | |
parent | 139775ccc040a07e07c5407e34834dab27928cbc (diff) |
Merge pull request #3529 from pherl/merge3.4.x
Merge 3.4.x into master
Diffstat (limited to 'src/google/protobuf/map.h')
-rw-r--r-- | src/google/protobuf/map.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/google/protobuf/map.h b/src/google/protobuf/map.h index 6a88600c..6514a0cc 100644 --- a/src/google/protobuf/map.h +++ b/src/google/protobuf/map.h @@ -932,12 +932,16 @@ class Map { public: // Iterators - class const_iterator - : public std::iterator<std::forward_iterator_tag, value_type, ptrdiff_t, - const value_type*, const value_type&> { + class const_iterator { typedef typename InnerMap::const_iterator InnerIt; public: + typedef std::forward_iterator_tag iterator_category; + typedef typename Map::value_type value_type; + typedef ptrdiff_t difference_type; + typedef const value_type* pointer; + typedef const value_type& reference; + const_iterator() {} explicit const_iterator(const InnerIt& it) : it_(it) {} @@ -963,10 +967,16 @@ class Map { InnerIt it_; }; - class iterator : public std::iterator<std::forward_iterator_tag, value_type> { + class iterator { typedef typename InnerMap::iterator InnerIt; public: + typedef std::forward_iterator_tag iterator_category; + typedef typename Map::value_type value_type; + typedef ptrdiff_t difference_type; + typedef value_type* pointer; + typedef value_type& reference; + iterator() {} explicit iterator(const InnerIt& it) : it_(it) {} |