diff options
| author | Ryan Govostes <rzg@apple.com> | 2013-02-13 21:38:22 +0000 |
|---|---|---|
| committer | Ryan Govostes <rzg@apple.com> | 2013-02-13 21:38:22 +0000 |
| commit | f5d710f0b37c97622ed3bc22afb92ba9bff9fe7d (patch) | |
| tree | e37084cee1190810ea9f3200eaf1be860975cae9 | |
| parent | 5bdd8ed74d102480abe96167e923cbe95439e042 (diff) | |
| download | bcm5719-llvm-f5d710f0b37c97622ed3bc22afb92ba9bff9fe7d.tar.gz bcm5719-llvm-f5d710f0b37c97622ed3bc22afb92ba9bff9fe7d.zip | |
Add iterator_traits to ImmutableMap and ImmutableSet.
llvm-svn: 175085
| -rw-r--r-- | llvm/include/llvm/ADT/ImmutableMap.h | 5 | ||||
| -rw-r--r-- | llvm/include/llvm/ADT/ImmutableSet.h | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/llvm/include/llvm/ADT/ImmutableMap.h b/llvm/include/llvm/ADT/ImmutableMap.h index a4232f0da9c..a84ad25beef 100644 --- a/llvm/include/llvm/ADT/ImmutableMap.h +++ b/llvm/include/llvm/ADT/ImmutableMap.h @@ -224,6 +224,11 @@ public: iterator operator--(int) { iterator tmp(*this); --itr; return tmp; } bool operator==(const iterator& RHS) const { return RHS.itr == itr; } bool operator!=(const iterator& RHS) const { return RHS.itr != itr; } + + typedef ImmutableMap<KeyT,ValT,ValInfo>::value_type value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef std::bidirectional_iterator_tag iterator_category; }; iterator begin() const { return iterator(Root); } diff --git a/llvm/include/llvm/ADT/ImmutableSet.h b/llvm/include/llvm/ADT/ImmutableSet.h index 21b325e907a..247b5446601 100644 --- a/llvm/include/llvm/ADT/ImmutableSet.h +++ b/llvm/include/llvm/ADT/ImmutableSet.h @@ -1066,6 +1066,11 @@ public: inline bool operator==(const iterator& RHS) const { return RHS.itr == itr; } inline bool operator!=(const iterator& RHS) const { return RHS.itr != itr; } inline value_type *operator->() const { return &(operator*()); } + + typedef ImmutableSet<ValT,ValInfo>::value_type value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef std::bidirectional_iterator_tag iterator_category; }; iterator begin() const { return iterator(Root); } |

