From 72cc84aabd188e4add6e5012df86414b65d95bc8 Mon Sep 17 00:00:00 2001 From: Sam Russell Date: Thu, 7 Mar 2024 22:47:26 +0100 Subject: 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 --- python/mediumlevelil.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'python/mediumlevelil.py') diff --git a/python/mediumlevelil.py b/python/mediumlevelil.py index 53f87cdc..159299c7 100644 --- a/python/mediumlevelil.py +++ b/python/mediumlevelil.py @@ -3390,6 +3390,14 @@ class MediumLevelILFunction: _operation = operation.value return ExpressionIndex(core.BNMediumLevelILAddExpr(self.handle, _operation, size, a, b, c, d, e)) + 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 MediumLevelILInstruction.create() + """ + return core.BNGeMediumLevelILExprCount(self.handle) + def replace_expr(self, original: InstructionOrExpression, new: InstructionOrExpression) -> None: """ ``replace_expr`` allows modification of MLIL expressions -- cgit v1.3.1