diff options
| author | Peter LaFosse <peter@vector35.com> | 2021-07-07 08:26:29 -0400 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2021-09-05 10:09:09 -0400 |
| commit | 764063b2b44dbeba5f2f318c971e4f4acfb48427 (patch) | |
| tree | e014fe6a859b97a653cef80dc9db66a06c706c37 /binaryninjacore.h | |
| parent | d376db916f5fc83f9e654edf23364d200839ac50 (diff) | |
Refactor Python Types
Remove _mutable types
Diffstat (limited to 'binaryninjacore.h')
| -rw-r--r-- | binaryninjacore.h | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/binaryninjacore.h b/binaryninjacore.h index 77107f3d..42f60158 100644 --- a/binaryninjacore.h +++ b/binaryninjacore.h @@ -21,8 +21,9 @@ #ifndef __BINARYNINJACORE_H__ #define __BINARYNINJACORE_H__ -#include <stdint.h> -#include <stddef.h> +#include <cstdint> +#include <cstddef> +#include <cstdlib> // Current ABI version for linking to the core. This is incremented any time // there are changes to the API that affect linking, including new functions, @@ -63,7 +64,7 @@ #endif #define BN_MAX_INSTRUCTION_LENGTH 256 -#define BN_DEFAULT_NSTRUCTION_LENGTH 16 +#define BN_DEFAULT_INSTRUCTION_LENGTH 16 #define BN_DEFAULT_OPCODE_DISPLAY 8 #define BN_MAX_INSTRUCTION_BRANCHES 3 @@ -637,7 +638,7 @@ extern "C" EnumNamedTypeClass = 5 }; - enum BNStructureType + enum BNStructureVariant { ClassStructureType = 0, StructStructureType = 1, @@ -1671,7 +1672,7 @@ extern "C" SidebarWidgetBackgroundColor }; - // The following edge styles map to QT's Qt::PenStyle enumeration + // The following edge styles map to Qt's Qt::PenStyle enumeration enum BNEdgePenStyle { NoPen = 0, // no line at all. @@ -4671,6 +4672,7 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI BNType* BNCreateWideCharType(size_t width, const char* altName); BINARYNINJACOREAPI BNType* BNCreateStructureType(BNStructure* s); BINARYNINJACOREAPI BNType* BNCreateEnumerationType(BNArchitecture* arch, BNEnumeration* e, size_t width, bool isSigned); + BINARYNINJACOREAPI BNType* BNCreateEnumerationTypeOfWidth(BNEnumeration* e, size_t width, bool isSigned); BINARYNINJACOREAPI BNType* BNCreatePointerType(BNArchitecture* arch, const BNTypeWithConfidence* const type, BNBoolWithConfidence* cnst, BNBoolWithConfidence* vltl, BNReferenceType refType); BINARYNINJACOREAPI BNType* BNCreatePointerTypeOfWidth(size_t width, const BNTypeWithConfidence* const type, @@ -4694,6 +4696,7 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI BNTypeBuilder* BNCreateStructureTypeBuilderWithBuilder(BNStructureBuilder* s); BINARYNINJACOREAPI BNTypeBuilder* BNCreateEnumerationTypeBuilder(BNArchitecture* arch, BNEnumeration* e, size_t width, bool isSigned); BINARYNINJACOREAPI BNTypeBuilder* BNCreateEnumerationTypeBuilderWithBuilder(BNArchitecture* arch, BNEnumerationBuilder* e, size_t width, bool isSigned); + BINARYNINJACOREAPI BNTypeBuilder* BNCreateEnumerationTypeBuilderOfWidth(BNEnumeration* e, size_t width, bool isSigned); BINARYNINJACOREAPI BNTypeBuilder* BNCreatePointerTypeBuilder(BNArchitecture* arch, const BNTypeWithConfidence* const type, BNBoolWithConfidence* cnst, BNBoolWithConfidence* vltl, BNReferenceType refType); BINARYNINJACOREAPI BNTypeBuilder* BNCreatePointerTypeBuilderOfWidth(size_t width, const BNTypeWithConfidence* const type, @@ -4733,6 +4736,8 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI BNOffsetWithConfidence BNGetTypeStackAdjustment(BNType* type); BINARYNINJACOREAPI BNQualifiedName BNTypeGetStructureName(BNType* type); BINARYNINJACOREAPI BNNamedTypeReference* BNGetRegisteredTypeName(BNType* type); + BINARYNINJACOREAPI BNReferenceType BNTypeGetReferenceType(BNType* type); + BINARYNINJACOREAPI char* BNGetTypeAlternateName(BNType* type); BINARYNINJACOREAPI char* BNGetTypeString(BNType* type, BNPlatform* platform); BINARYNINJACOREAPI char* BNGetTypeStringBeforeName(BNType* type, BNPlatform* platform); @@ -4779,6 +4784,7 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI void BNTypeBuilderSetVolatile(BNTypeBuilder* type, BNBoolWithConfidence* vltl); BINARYNINJACOREAPI BNOffsetWithConfidence BNGetTypeBuilderStackAdjustment(BNTypeBuilder* type); BINARYNINJACOREAPI BNQualifiedName BNTypeBuilderGetStructureName(BNTypeBuilder* type); + BINARYNINJACOREAPI BNReferenceType BNTypeBuilderGetReferenceType(BNTypeBuilder* type); BINARYNINJACOREAPI char* BNGetTypeBuilderString(BNTypeBuilder* type, BNPlatform* platform); BINARYNINJACOREAPI char* BNGetTypeBuilderStringBeforeName(BNTypeBuilder* type, BNPlatform* platform); @@ -4816,7 +4822,7 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI BNQualifiedName BNGetTypeReferenceBuilderName(BNNamedTypeReferenceBuilder* nt); BINARYNINJACOREAPI BNStructureBuilder* BNCreateStructureBuilder(void); - BINARYNINJACOREAPI BNStructureBuilder* BNCreateStructureBuilderWithOptions(BNStructureType type, bool packed); + BINARYNINJACOREAPI BNStructureBuilder* BNCreateStructureBuilderWithOptions(BNStructureVariant type, bool packed); BINARYNINJACOREAPI BNStructureBuilder* BNCreateStructureBuilderFromStructure(BNStructure* s); BINARYNINJACOREAPI BNStructureBuilder* BNDuplicateStructureBuilder(BNStructureBuilder* s); BINARYNINJACOREAPI BNStructure* BNFinalizeStructureBuilder(BNStructureBuilder* s); @@ -4833,7 +4839,7 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI size_t BNGetStructureAlignment(BNStructure* s); BINARYNINJACOREAPI bool BNIsStructurePacked(BNStructure* s); BINARYNINJACOREAPI bool BNIsStructureUnion(BNStructure* s); - BINARYNINJACOREAPI BNStructureType BNGetStructureType(BNStructure* s); + BINARYNINJACOREAPI BNStructureVariant BNGetStructureType(BNStructure* s); BINARYNINJACOREAPI BNStructure* BNStructureWithReplacedStructure(BNStructure* s, BNStructure* from, BNStructure* to); BINARYNINJACOREAPI BNStructure* BNStructureWithReplacedEnumeration(BNStructure* s, BNEnumeration* from, BNEnumeration* to); @@ -4850,8 +4856,8 @@ __attribute__ ((format (printf, 1, 2))) BINARYNINJACOREAPI bool BNIsStructureBuilderPacked(BNStructureBuilder* s); BINARYNINJACOREAPI void BNSetStructureBuilderPacked(BNStructureBuilder* s, bool packed); BINARYNINJACOREAPI bool BNIsStructureBuilderUnion(BNStructureBuilder* s); - BINARYNINJACOREAPI void BNSetStructureBuilderType(BNStructureBuilder* s, BNStructureType type); - BINARYNINJACOREAPI BNStructureType BNGetStructureBuilderType(BNStructureBuilder* s); + BINARYNINJACOREAPI void BNSetStructureBuilderType(BNStructureBuilder* s, BNStructureVariant type); + BINARYNINJACOREAPI BNStructureVariant BNGetStructureBuilderType(BNStructureBuilder* s); BINARYNINJACOREAPI void BNAddStructureBuilderMember(BNStructureBuilder* s, const BNTypeWithConfidence* const type, const char* name); BINARYNINJACOREAPI void BNAddStructureBuilderMemberAtOffset(BNStructureBuilder* s, |
