From ecfc518d025359e7d2cf7e5da30f856916bf48b4 Mon Sep 17 00:00:00 2001 From: Peter LaFosse Date: Fri, 12 Jan 2024 16:55:19 -0500 Subject: Add APIs for getting the the base Metadata object for BinaryViews and TypeLibraries --- python/metadata.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'python/metadata.py') diff --git a/python/metadata.py b/python/metadata.py index e2483749..e87c5cbb 100644 --- a/python/metadata.py +++ b/python/metadata.py @@ -19,7 +19,7 @@ # IN THE SOFTWARE. import ctypes -from typing import Union, Optional, List, Tuple +from typing import Union, Optional, List, Tuple, Any # Binary Ninja components from . import _binaryninjacore as core @@ -184,6 +184,12 @@ class Metadata: raise ValueError("Metadata object is not boolean type") return core.BNMetadataGetBoolean(self.handle) + def get(self, key:str, default:Any=None) -> Any: + try: + return self[key] + except (KeyError, IndexError, ValueError, NotImplementedError): + return default + @property def value(self): if self.is_integer: -- cgit v1.3.1