about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--miasm/expression/expression.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/miasm/expression/expression.py b/miasm/expression/expression.py
index 1029b319..88bc9642 100644
--- a/miasm/expression/expression.py
+++ b/miasm/expression/expression.py
@@ -817,3 +817,12 @@ def ExprInt_from(e, i):
     return ExprInt(tab_uintsize[e.get_size()](i))
 
 
+def get_expr_ids_visit(e, ids):
+    if isinstance(e, ExprId):
+        ids.add(e)
+    return e
+
+def get_expr_ids(e):
+    ids = set()
+    e.visit(lambda x:get_expr_ids_visit(x, ids))
+    return ids