summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2025-07-11 17:55:04 -0400
committerRusty Wagner <rusty.wagner@gmail.com>2025-07-15 13:55:33 -0400
commit6894a946b1fa5ad24e64d24bb7f606bae14c300a (patch)
tree1caa51b5e5ddab129462dc245c70377aedd800ae /binaryninjaapi.h
parente83374c78ccb8f7351fa3fdbaa0cbb099281898d (diff)
Add API to get all type references at the same time to avoid duplicating work
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 85dedca7..8d3fed9c 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -4554,6 +4554,13 @@ namespace BinaryNinja {
BNRegisterValue ToAPIObject();
};
+ struct AllTypeReferences
+ {
+ std::vector<ReferenceSource> codeRefs;
+ std::vector<uint64_t> dataRefs;
+ std::vector<TypeReferenceSource> typeRefs;
+ };
+
struct AllTypeFieldReferences
{
std::vector<TypeFieldReference> codeRefs;
@@ -5654,6 +5661,13 @@ namespace BinaryNinja {
*/
std::vector<TypeReferenceSource> GetTypeReferencesForTypeField(const QualifiedName& type, uint64_t offset);
+ /*! Returns a all references to a specific type. This includes code, data, and type references.
+
+ \param type QualifiedName of the type
+ \return AllTypeReferences structure with all references
+ */
+ AllTypeReferences GetAllReferencesForType(const QualifiedName& type);
+
/*! Returns a all references to a specific type field. This includes code, data, and type references.
\param type QualifiedName of the type