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 /type.cpp | |
| parent | d376db916f5fc83f9e654edf23364d200839ac50 (diff) | |
Refactor Python Types
Remove _mutable types
Diffstat (limited to 'type.cpp')
| -rw-r--r-- | type.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
@@ -758,6 +758,12 @@ Ref<Type> Type::EnumerationType(Architecture* arch, Enumeration* enm, size_t wid } +Ref<Type> Type::EnumerationType(Enumeration* enm, size_t width, bool isSigned) +{ + return new Type(BNCreateEnumerationTypeOfWidth(enm->GetObject(), width, isSigned)); +} + + Ref<Type> Type::PointerType(Architecture* arch, const Confidence<Ref<Type>>& type, const Confidence<bool>& cnst, const Confidence<bool>& vltl, BNReferenceType refType) { @@ -1431,7 +1437,7 @@ TypeBuilder TypeBuilder::NamedType(BinaryView* view, const QualifiedName& name) TypeBuilder TypeBuilder::EnumerationType(Architecture* arch, Enumeration* enm, size_t width, bool isSigned) { - return TypeBuilder(BNCreateEnumerationTypeBuilder(arch->GetObject(), enm->GetObject(), width, isSigned)); + return TypeBuilder(BNCreateEnumerationTypeBuilder(arch ? arch->GetObject() : nullptr, enm->GetObject(), width, isSigned)); } @@ -1795,7 +1801,7 @@ bool Structure::IsUnion() const } -BNStructureType Structure::GetStructureType() const +BNStructureVariant Structure::GetStructureType() const { return BNGetStructureType(m_object); } @@ -1849,7 +1855,7 @@ StructureBuilder::StructureBuilder(BNStructureBuilder* s) } -StructureBuilder::StructureBuilder(BNStructureType type, bool packed) +StructureBuilder::StructureBuilder(BNStructureVariant type, bool packed) { m_object = BNCreateStructureBuilderWithOptions(type, packed); } @@ -2016,14 +2022,14 @@ bool StructureBuilder::IsUnion() const } -StructureBuilder& StructureBuilder::SetStructureType(BNStructureType t) +StructureBuilder& StructureBuilder::SetStructureType(BNStructureVariant t) { BNSetStructureBuilderType(m_object, t); return *this; } -BNStructureType StructureBuilder::GetStructureType() const +BNStructureVariant StructureBuilder::GetStructureType() const { return BNGetStructureBuilderType(m_object); } |
