summaryrefslogtreecommitdiff
path: root/binaryview.cpp
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2023-02-20 21:58:55 -0500
committerGlenn Smith <glenn@vector35.com>2023-11-06 16:10:47 -0500
commit4108964609171327618627477163339656037111 (patch)
tree79f4c6da6394b973cee05cc42b6edd7e2e20909d /binaryview.cpp
parentb270d7ebe1e2a406e1f7f14807987d24b0c4a846 (diff)
Type Containers
Diffstat (limited to 'binaryview.cpp')
-rw-r--r--binaryview.cpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/binaryview.cpp b/binaryview.cpp
index 219a37e5..4bbd3aa3 100644
--- a/binaryview.cpp
+++ b/binaryview.cpp
@@ -3611,6 +3611,24 @@ bool BinaryView::ParseTypesFromSource(const string& source, const vector<string>
}
+TypeContainer BinaryView::GetTypeContainer()
+{
+ return TypeContainer(BNGetAnalysisTypeContainer(m_object));
+}
+
+
+TypeContainer BinaryView::GetAutoTypeContainer()
+{
+ return TypeContainer(BNGetAnalysisAutoTypeContainer(m_object));
+}
+
+
+TypeContainer BinaryView::GetUserTypeContainer()
+{
+ return TypeContainer(BNGetAnalysisUserTypeContainer(m_object));
+}
+
+
map<QualifiedName, Ref<Type>> BinaryView::GetTypes()
{
size_t count;
@@ -3623,7 +3641,7 @@ map<QualifiedName, Ref<Type>> BinaryView::GetTypes()
result[name] = new Type(BNNewTypeReference(types[i].type));
}
- BNFreeTypeList(types, count);
+ BNFreeTypeAndNameList(types, count);
return result;
}
@@ -3640,7 +3658,7 @@ vector<pair<QualifiedName, Ref<Type>>> BinaryView::GetDependencySortedTypes()
result.emplace_back(name, new Type(BNNewTypeReference(types[i].type)));
}
- BNFreeTypeList(types, count);
+ BNFreeTypeAndNameList(types, count);
return result;
}