OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MAPS_H__ | 5 #ifndef MAPS_H__ |
6 #define MAPS_H__ | 6 #define MAPS_H__ |
7 | 7 |
8 #include <elf.h> | 8 #include <elf.h> |
9 #include <functional> | 9 #include <functional> |
10 #include <map> | 10 #include <map> |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 friend class Iterator; | 42 friend class Iterator; |
43 class Iterator { | 43 class Iterator { |
44 friend class Maps; | 44 friend class Maps; |
45 | 45 |
46 protected: | 46 protected: |
47 explicit Iterator(Maps* maps); | 47 explicit Iterator(Maps* maps); |
48 Iterator(Maps* maps, bool at_beginning, bool at_end); | 48 Iterator(Maps* maps, bool at_beginning, bool at_end); |
49 Maps::LibraryMap::iterator& getIterator() const; | 49 Maps::LibraryMap::iterator& getIterator() const; |
50 | 50 |
51 public: | 51 public: |
| 52 Iterator(const Iterator& other); |
52 Iterator begin(); | 53 Iterator begin(); |
53 Iterator end(); | 54 Iterator end(); |
54 Iterator& operator++(); | 55 Iterator& operator++(); |
55 Iterator operator++(int i); | 56 Iterator operator++(int i); |
56 Library* operator*() const; | 57 Library* operator*() const; |
57 bool operator==(const Iterator& iter) const; | 58 bool operator==(const Iterator& iter) const; |
58 bool operator!=(const Iterator& iter) const; | 59 bool operator!=(const Iterator& iter) const; |
59 const string& name() const; | 60 const string& name() const; |
60 | 61 |
61 protected: | 62 protected: |
(...skipping 23 matching lines...) Expand all Loading... |
85 const Iterator begin_iter_; | 86 const Iterator begin_iter_; |
86 const Iterator end_iter_; | 87 const Iterator end_iter_; |
87 | 88 |
88 LibraryMap libs_; | 89 LibraryMap libs_; |
89 char* vsyscall_; | 90 char* vsyscall_; |
90 }; | 91 }; |
91 | 92 |
92 } // namespace | 93 } // namespace |
93 | 94 |
94 #endif // MAPS_H__ | 95 #endif // MAPS_H__ |
OLD | NEW |