diff options
| -rw-r--r-- | highlevelilinstruction.h | 30 | ||||
| -rw-r--r-- | lowlevelilinstruction.h | 60 | ||||
| -rw-r--r-- | mediumlevelilinstruction.h | 42 |
3 files changed, 132 insertions, 0 deletions
diff --git a/highlevelilinstruction.h b/highlevelilinstruction.h index 86a29423..2e10c485 100644 --- a/highlevelilinstruction.h +++ b/highlevelilinstruction.h @@ -181,6 +181,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef uint64_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + #ifdef BINARYNINJACORE_LIBRARY HighLevelILFunction* function; #else @@ -219,6 +225,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef size_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + HighLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -253,6 +265,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef HighLevelILInstruction value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + HighLevelILIntegerList::const_iterator pos; bool ast; size_t instructionIndex; @@ -292,6 +310,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSAVariable value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + HighLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -819,6 +843,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef HighLevelILOperand value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + const HighLevelILOperandList* owner; _STD_VECTOR<HighLevelILOperandUsage>::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } diff --git a/lowlevelilinstruction.h b/lowlevelilinstruction.h index 45128b7f..43c31adc 100644 --- a/lowlevelilinstruction.h +++ b/lowlevelilinstruction.h @@ -371,6 +371,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef uint64_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + #ifdef BINARYNINJACORE_LIBRARY LowLevelILFunction* function; const BNLowLevelILInstruction* instr; @@ -410,6 +416,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef size_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -444,6 +456,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef std::pair<uint64_t, size_t> value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -479,6 +497,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef LowLevelILInstruction value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; size_t instructionIndex; bool operator==(const ListIterator& a) const { return pos == a.pos; } @@ -516,6 +540,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef RegisterOrFlag value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -550,6 +580,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSARegister value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -585,6 +621,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSARegisterStack value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -620,6 +662,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSAFlag value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -655,6 +703,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSARegisterOrFlag value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + LowLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -1227,6 +1281,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef LowLevelILOperand value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + const LowLevelILOperandList* owner; _STD_VECTOR<LowLevelILOperandUsage>::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } diff --git a/mediumlevelilinstruction.h b/mediumlevelilinstruction.h index 23413b4a..a1f8e00d 100644 --- a/mediumlevelilinstruction.h +++ b/mediumlevelilinstruction.h @@ -220,6 +220,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef uint64_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + #ifdef BINARYNINJACORE_LIBRARY MediumLevelILFunction* function; #else @@ -258,6 +264,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef size_t value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + MediumLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -292,6 +304,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef std::pair<uint64_t, size_t> value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + MediumLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -327,6 +345,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef Variable value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + MediumLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -361,6 +385,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef SSAVariable value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + MediumLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } bool operator!=(const ListIterator& a) const { return pos != a.pos; } @@ -397,6 +427,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef MediumLevelILInstruction value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + size_t instructionIndex; MediumLevelILIntegerList::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } @@ -878,6 +914,12 @@ namespace BinaryNinja { struct ListIterator { + typedef std::forward_iterator_tag iterator_category; + typedef MediumLevelILOperand value_type; + typedef std::ptrdiff_t difference_type; + typedef void pointer; + typedef value_type reference; + const MediumLevelILOperandList* owner; _STD_VECTOR<MediumLevelILOperandUsage>::const_iterator pos; bool operator==(const ListIterator& a) const { return pos == a.pos; } |
