! \ingroup highlevelil */
| 216 | \ingroup highlevelil |
| 217 | */ |
| 218 | class HighLevelILIndexList |
| 219 | { |
| 220 | struct ListIterator |
| 221 | { |
| 222 | HighLevelILIntegerList::const_iterator pos; |
| 223 | bool operator==(const ListIterator& a) const { return pos == a.pos; } |
| 224 | bool operator!=(const ListIterator& a) const { return pos != a.pos; } |
| 225 | bool operator<(const ListIterator& a) const { return pos < a.pos; } |
| 226 | ListIterator& operator++() |
| 227 | { |
| 228 | ++pos; |
| 229 | return *this; |
| 230 | } |
| 231 | size_t operator*(); |
| 232 | }; |
| 233 | |
| 234 | HighLevelILIntegerList m_list; |
| 235 | |
| 236 | public: |
| 237 | typedef ListIterator const_iterator; |
| 238 | |
| 239 | HighLevelILIndexList(HighLevelILFunction* func, const BNHighLevelILInstruction& instr, size_t count); |
| 240 | |
| 241 | const_iterator begin() const; |
| 242 | const_iterator end() const; |
| 243 | size_t size() const; |
| 244 | size_t operator[](size_t i) const; |
| 245 | |
| 246 | operator _STD_VECTOR<size_t>() const; |
| 247 | }; |
| 248 | |
| 249 | /*! |
| 250 | \ingroup highlevelil |
no outgoing calls
no test coverage detected