From 390d5d27d4de6b7c9cb06b957a483bb2ab69f241 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Thu, 7 Jul 2022 21:03:29 -0400 Subject: Merge variables API/UI, variable liveness API for determining soundness of variable merges --- python/variable.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'python/variable.py') diff --git a/python/variable.py b/python/variable.py index 07b8863c..839e87ce 100644 --- a/python/variable.py +++ b/python/variable.py @@ -663,7 +663,7 @@ class Variable(CoreVariable): if self.type is not None: return f"" else: - return repr(super()) + return f"" def __str__(self): return self.name @@ -712,13 +712,18 @@ class Variable(CoreVariable): @property def name(self) -> str: """Name of the variable, Settings thisslow because it ensures that analysis has been updated. """ - return core.BNGetRealVariableName(self._function.handle, self._function.arch.handle, self.to_BNVariable()) + return core.BNGetVariableNameOrDefault(self._function.handle, self.to_BNVariable()) @name.setter def name(self, name: Optional[str]) -> None: self.set_name_async(name) self._function.view.update_analysis_and_wait() + @property + def last_seen_name(self) -> str: + """Name of the variable, or the name most recently assigned if the variable has since been removed (read-only). """ + return core.BNGetLastSeenVariableNameOrDefault(self._function.handle, self.to_BNVariable()) + @property def type(self) -> Optional['binaryninja.types.Type']: var_type_conf = core.BNGetVariableType(self._function.handle, self.to_BNVariable()) -- cgit v1.3.1