diff options
Diffstat (limited to 'highlevelilinstruction.h')
| -rw-r--r-- | highlevelilinstruction.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/highlevelilinstruction.h b/highlevelilinstruction.h index 84afeb98..083fed5d 100644 --- a/highlevelilinstruction.h +++ b/highlevelilinstruction.h @@ -20,16 +20,19 @@ #pragma once -#include <functional> -#include <unordered_map> -#include <vector> +#include "base/function_ref.h" +#include "mediumlevelilinstruction.h" + #ifdef BINARYNINJACORE_LIBRARY #include "variable.h" #include "ilsourcelocation.h" #else #include "binaryninjaapi.h" #endif -#include "mediumlevelilinstruction.h" + +#include <unordered_map> +#include <vector> + #include <fmt/core.h> #ifdef BINARYNINJACORE_LIBRARY @@ -480,13 +483,13 @@ namespace BinaryNinja HighLevelILInstruction(const HighLevelILInstructionBase& instr); void CollectSubExprs(_STD_STACK<size_t>& toProcess) const; - void VisitExprs(const std::function<bool(const HighLevelILInstruction& expr)>& func) const; - void VisitExprs(const std::function<bool(const HighLevelILInstruction& expr)>& preFunc, - const std::function<void(const HighLevelILInstruction& expr)>& postFunc) const; + void VisitExprs(bn::base::function_ref<bool(const HighLevelILInstruction& expr)> func) const; + void VisitExprs(bn::base::function_ref<bool(const HighLevelILInstruction& expr)> preFunc, + bn::base::function_ref<void(const HighLevelILInstruction& expr)> postFunc) const; ExprId CopyTo(HighLevelILFunction* dest, const ILSourceLocation& sourceLocation = {}) const; ExprId CopyTo(HighLevelILFunction* dest, - const std::function<ExprId(const HighLevelILInstruction& subExpr)>& subExprHandler, + bn::base::function_ref<ExprId(const HighLevelILInstruction& subExpr)> subExprHandler, const ILSourceLocation& sourceLocation = {}) const; bool operator<(const HighLevelILInstruction& other) const; |
