diff options
Diffstat (limited to 'binaryninjaapi.h')
| -rw-r--r-- | binaryninjaapi.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h index b115263c..ed714be6 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -1449,6 +1449,7 @@ namespace BinaryNinja }; class Structure; + class UnknownType; class Enumeration; struct NameAndType @@ -1476,6 +1477,8 @@ namespace BinaryNinja bool CanReturn() const; Ref<Structure> GetStructure() const; Ref<Enumeration> GetEnumeration() const; + Ref<UnknownType> GetUnknownType() const; + uint64_t GetElementCount() const; void SetFunctionCanReturn(bool canReturn); @@ -1492,6 +1495,7 @@ namespace BinaryNinja static Ref<Type> IntegerType(size_t width, bool sign, const std::string& altName = ""); static Ref<Type> FloatType(size_t width, const std::string& typeName = ""); static Ref<Type> StructureType(Structure* strct); + static Ref<Type> UnknownNamedType(UnknownType* unknwn); static Ref<Type> EnumerationType(Architecture* arch, Enumeration* enm, size_t width = 0, bool issigned = false); static Ref<Type> PointerType(Architecture* arch, Type* type, bool cnst = false, bool vltl = false, BNReferenceType refType = PointerReferenceType); @@ -1502,6 +1506,14 @@ namespace BinaryNinja static std::string GetQualifiedName(const std::vector<std::string>& names); }; + class UnknownType: public CoreRefCountObject<BNUnknownType, BNNewUnknownTypeReference, BNFreeUnknownType> + { + public: + UnknownType(BNUnknownType* s, std::vector<std::string> name = {}); + std::vector<std::string> GetName() const; + void SetName(const std::vector<std::string>& name); + }; + struct StructureMember { Ref<Type> type; |
