summaryrefslogtreecommitdiff
path: root/python/lowlevelil.py
diff options
context:
space:
mode:
authorSam Russell <sam.h.russell@gmail.com>2024-03-07 22:47:26 +0100
committerGlenn Smith <couleeapps@gmail.com>2024-03-07 21:11:49 -0500
commit72cc84aabd188e4add6e5012df86414b65d95bc8 (patch)
treed26adb52deed8645a3811512cadd5cb90607048d /python/lowlevelil.py
parent828fff839f4e4de3e9582405dfec567531000ebc (diff)
Expose get_expr_count() on python llil and mlil
This is already exposed in the CPP interface, and is useful for workflows for enumerating all expressions in an ILFunction
Diffstat (limited to 'python/lowlevelil.py')
-rw-r--r--python/lowlevelil.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/python/lowlevelil.py b/python/lowlevelil.py
index 590cae83..16ffbd88 100644
--- a/python/lowlevelil.py
+++ b/python/lowlevelil.py
@@ -3721,6 +3721,14 @@ class LowLevelILFunction:
assert False, "flags type unsupported"
return ExpressionIndex(core.BNLowLevelILAddExpr(self.handle, operation, size, _flags, a, b, c, d))
+ def get_expr_count(self) -> int:
+ """
+ ``get_expr_count`` gives a the total number of expressions in this IL function
+
+ You can use this to enumerate all expressions in conjunction with LowLevelILInstruction.create()
+ """
+ return core.BNGetLowLevelILExprCount(self.handle)
+
def replace_expr(self, original: InstructionOrExpression, new: InstructionOrExpression) -> None:
"""
``replace_expr`` allows modification of expressions but ONLY during lifting.