From 6955825444658317609313782745220062335525 Mon Sep 17 00:00:00 2001 From: Glenn Smith Date: Tue, 2 Apr 2024 13:33:19 -0400 Subject: Add `importDependencies` argument to `ParseTypeString` to control library imports --- binaryview.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'binaryview.cpp') 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& typesAllowRedefinition) + const std::set& 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>& types, map>& variables, map>& functions, string& errors, - const std::set& typesAllowRedefinition) + const std::set& typesAllowRedefinition, bool importDependencies) { BNTypeParserResult result; char* errorStr = nullptr; @@ -3774,7 +3774,7 @@ bool BinaryView::ParseTypeString(const string& source, map 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& options, const vector& includeDirs, - TypeParserResult& result, string& errors, const std::set& typesAllowRedefinition) + TypeParserResult& result, string& errors, const std::set& typesAllowRedefinition, bool importDependencies) { BNQualifiedNameList typesList; typesList.count = typesAllowRedefinition.size(); @@ -3829,7 +3829,7 @@ bool BinaryView::ParseTypesFromSource(const string& source, const vector 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; -- cgit v1.3.1