summaryrefslogtreecommitdiff
path: root/binaryview.cpp
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2024-04-02 13:33:19 -0400
committerGlenn Smith <glenn@vector35.com>2024-04-03 16:04:50 -0400
commit6955825444658317609313782745220062335525 (patch)
tree91b1a07c193828478a365b734cafdb0b3a7beab5 /binaryview.cpp
parent6320364130513117734495793886487928062891 (diff)
Add `importDependencies` argument to `ParseTypeString` to control library imports
Diffstat (limited to 'binaryview.cpp')
-rw-r--r--binaryview.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/binaryview.cpp b/binaryview.cpp
index feb3b765..51ee2ee9 100644
--- a/binaryview.cpp
+++ b/binaryview.cpp
@@ -3717,7 +3717,7 @@ bool BinaryView::ParsePossibleValueSet(
bool BinaryView::ParseTypeString(const string& text, QualifiedNameAndType& result, string& errors,
- const std::set<QualifiedName>& typesAllowRedefinition)
+ const std::set<QualifiedName>& typesAllowRedefinition, bool importDependencies)
{
BNQualifiedNameAndType nt;
char* errorStr;
@@ -3732,7 +3732,7 @@ bool BinaryView::ParseTypeString(const string& text, QualifiedNameAndType& resul
i++;
}
- if (!BNParseTypeString(m_object, text.c_str(), &nt, &errorStr, &typesList))
+ if (!BNParseTypeString(m_object, text.c_str(), &nt, &errorStr, &typesList, importDependencies))
{
errors = errorStr;
BNFreeString(errorStr);
@@ -3751,7 +3751,7 @@ bool BinaryView::ParseTypeString(const string& text, QualifiedNameAndType& resul
bool BinaryView::ParseTypeString(const string& source, map<QualifiedName, Ref<Type>>& types,
map<QualifiedName, Ref<Type>>& variables, map<QualifiedName, Ref<Type>>& functions, string& errors,
- const std::set<QualifiedName>& typesAllowRedefinition)
+ const std::set<QualifiedName>& typesAllowRedefinition, bool importDependencies)
{
BNTypeParserResult result;
char* errorStr = nullptr;
@@ -3774,7 +3774,7 @@ bool BinaryView::ParseTypeString(const string& source, map<QualifiedName, Ref<Ty
vector<const char*> includeDirs;
bool ok = BNParseTypesString(m_object, source.c_str(), options.data(), options.size(),
- includeDirs.data(), includeDirs.size(), &result, &errorStr, &typesList);
+ includeDirs.data(), includeDirs.size(), &result, &errorStr, &typesList, importDependencies);
if (errorStr)
{
errors = errorStr;
@@ -3805,7 +3805,7 @@ bool BinaryView::ParseTypeString(const string& source, map<QualifiedName, Ref<Ty
bool BinaryView::ParseTypesFromSource(const string& source, const vector<string>& options, const vector<string>& includeDirs,
- TypeParserResult& result, string& errors, const std::set<QualifiedName>& typesAllowRedefinition)
+ TypeParserResult& result, string& errors, const std::set<QualifiedName>& typesAllowRedefinition, bool importDependencies)
{
BNQualifiedNameList typesList;
typesList.count = typesAllowRedefinition.size();
@@ -3829,7 +3829,7 @@ bool BinaryView::ParseTypesFromSource(const string& source, const vector<string>
char* errorStr = nullptr;
bool ok = BNParseTypesString(m_object, source.c_str(), coreOptions.data(), coreOptions.size(),
- coreIncludeDirs.data(), coreIncludeDirs.size(), &apiResult, &errorStr, &typesList);
+ coreIncludeDirs.data(), coreIncludeDirs.size(), &apiResult, &errorStr, &typesList, importDependencies);
if (errorStr)
{
errors = errorStr;