MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / __getitem__

Method __getitem__

python/metadata.py:135–150  ·  view source on GitHub ↗
(self, value)

Source from the content-addressed store, hash-verified

133 raise TypeError("Metadata object doesn't support iteration")
134
135 def __getitem__(self, value):
136 if self.is_array:
137 if not isinstance(value, int):
138 raise ValueError("Metadata object only supports integers for indexing")
139 if value >= len(self):
140 raise IndexError("Index value out of range")
141 return Metadata(handle=core.BNMetadataGetForIndex(self.handle, value)).value
142 if self.is_dict:
143 if not isinstance(value, str):
144 raise ValueError("Metadata object only supports strings for indexing")
145 handle = core.BNMetadataGetForKey(self.handle, value)
146 if handle is None:
147 raise KeyError(value)
148 return Metadata(handle=handle).value
149
150 raise NotImplementedError("Metadata object doesn't support indexing")
151
152 def __setitem__(self, key, value):
153 if not self.is_dict:

Callers

nothing calls this directly

Calls 1

MetadataClass · 0.70

Tested by

no test coverage detected