diff options
| author | Glenn Smith <glenn@vector35.com> | 2023-11-06 15:28:59 -0500 |
|---|---|---|
| committer | Glenn Smith <glenn@vector35.com> | 2023-11-06 16:10:47 -0500 |
| commit | 6436615567547349434351468012512505109552 (patch) | |
| tree | e798973c25805377731c4a199f40379263bc128c /binaryninjaapi.h | |
| parent | 4108964609171327618627477163339656037111 (diff) | |
Type Browser
Diffstat (limited to 'binaryninjaapi.h')
| -rw-r--r-- | binaryninjaapi.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h index d32af5ce..021069e5 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -30,6 +30,7 @@ #include <vector> #include <map> #include <unordered_map> +#include <unordered_set> #include <exception> #include <functional> #include <set> @@ -3169,7 +3170,7 @@ namespace BinaryNinja { { BNTypeDefinitionLineType lineType; std::vector<InstructionTextToken> tokens; - Ref<Type> type, rootType; + Ref<Type> type, parentType, rootType; std::string rootTypeName; Ref<NamedTypeReference> baseType; uint64_t baseOffset; @@ -4505,6 +4506,13 @@ namespace BinaryNinja { */ std::vector<Confidence<Ref<Type>>> GetTypesReferenced(const QualifiedName& type, uint64_t offset); + std::unordered_set<QualifiedName> GetOutgoingDirectTypeReferences(const QualifiedName& type); + std::unordered_set<QualifiedName> GetOutgoingRecursiveTypeReferences(const QualifiedName& type); + std::unordered_set<QualifiedName> GetOutgoingRecursiveTypeReferences(const std::unordered_set<QualifiedName>& types); + std::unordered_set<QualifiedName> GetIncomingDirectTypeReferences(const QualifiedName& type); + std::unordered_set<QualifiedName> GetIncomingRecursiveTypeReferences(const QualifiedName& type); + std::unordered_set<QualifiedName> GetIncomingRecursiveTypeReferences(const std::unordered_set<QualifiedName>& types); + Ref<Structure> CreateStructureBasedOnFieldAccesses(const QualifiedName& type); // Unimplemented! /*! Returns a list of virtual addresses called by the call site in the ReferenceSource |
