Expose flags for collapse resource name to 'convert' command.
To achieve this ParseResourceConfig is extracted to Utils.cpp and tests
are moved from Optimize_test.cpp to Util_test.cpp.
Bug: b/249793372
Test: Util_test, Convert_test
Change-Id: I5a0458e3834d5ea62c96013abc14527285e895e0
diff --git a/tools/aapt2/cmd/Util.h b/tools/aapt2/cmd/Util.h
index 7af27f5..3d4ca24 100644
--- a/tools/aapt2/cmd/Util.h
+++ b/tools/aapt2/cmd/Util.h
@@ -18,12 +18,15 @@
#define AAPT_SPLIT_UTIL_H
#include <regex>
+#include <set>
+#include <unordered_set>
#include "AppInfo.h"
#include "SdkConstants.h"
#include "androidfw/IDiagnostics.h"
#include "androidfw/StringPiece.h"
#include "filter/ConfigFilter.h"
+#include "process/IResourceTableConsumer.h"
#include "split/TableSplitter.h"
#include "xml/XmlDom.h"
@@ -76,6 +79,10 @@
// Returns a case insensitive regular expression based on the input.
std::regex GetRegularExpression(const std::string &input);
+bool ParseResourceConfig(const std::string& content, IAaptContext* context,
+ std::unordered_set<ResourceName>& out_resource_exclude_list,
+ std::set<ResourceName>& out_name_collapse_exemptions);
+
} // namespace aapt
#endif /* AAPT_SPLIT_UTIL_H */