diff options
| author | Rusty Wagner <rusty@vector35.com> | 2020-01-13 20:35:50 -0500 |
|---|---|---|
| committer | Rusty Wagner <rusty@vector35.com> | 2020-02-04 13:59:10 -0500 |
| commit | c34ac521dd6022d522053712833943c699bedb3f (patch) | |
| tree | 2a3e345b65ee506cb6380c317d427157f536d04a /python/types.py | |
| parent | bb1fe1d4b3956f92810c107a35355d2622209c99 (diff) | |
Add registered name to type objects
Diffstat (limited to 'python/types.py')
| -rw-r--r-- | python/types.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/python/types.py b/python/types.py index 68fc9a76..8b883e6b 100644 --- a/python/types.py +++ b/python/types.py @@ -573,6 +573,16 @@ class Type(object): result = core.BNGetTypeStackAdjustment(self._handle) return SizeWithConfidence(result.value, confidence = result.confidence) + @property + def registered_name(self): + """Name of type registered to binary view, if any (read-only)""" + if self._mutable: + return None + name = core.BNGetRegisteredTypeName(self._handle) + if not name: + return None + return NamedTypeReference(handle = name) + def __len__(self): return self.width @@ -582,6 +592,9 @@ class Type(object): platform = self._platform.handle if self._mutable: return core.BNGetTypeBuilderString(self._handle, platform) + name = self.registered_name + if name is not None: + return self.get_string_before_name() + " " + str(name.name) + self.get_string_after_name() return core.BNGetTypeString(self._handle, platform) def __repr__(self): |
