Move StringPiece to libandroidfw
libandroidfw needs to make use of StringPiece, so
move it to libandroidfw and update all code referencing
StringPiece in aapt2.
Test: make libandroidfw_tests libaapt2_tests
Change-Id: I68d7f0fc7c651b048d9d1f5e7971f10ef5349fa1
diff --git a/tools/aapt2/Diagnostics.h b/tools/aapt2/Diagnostics.h
index 5bc86a9..50e8b33 100644
--- a/tools/aapt2/Diagnostics.h
+++ b/tools/aapt2/Diagnostics.h
@@ -22,9 +22,9 @@
#include <string>
#include "android-base/macros.h"
+#include "androidfw/StringPiece.h"
#include "Source.h"
-#include "util/StringPiece.h"
#include "util/Util.h"
namespace aapt {
@@ -38,7 +38,7 @@
public:
DiagMessage() = default;
- explicit DiagMessage(const StringPiece& src) : source_(src) {}
+ explicit DiagMessage(const android::StringPiece& src) : source_(src) {}
explicit DiagMessage(const Source& src) : source_(src) {}
@@ -59,6 +59,12 @@
std::stringstream message_;
};
+template <>
+inline DiagMessage& DiagMessage::operator<<(const ::std::u16string& value) {
+ message_ << android::StringPiece16(value);
+ return *this;
+}
+
struct IDiagnostics {
virtual ~IDiagnostics() = default;