Make StringPiece to be std::string_view alias
Bug: 237583012
Test: build + boot + UTs
Change-Id: I849831f4466d3b9c7ec842b75256e7fcba77a0c0
diff --git a/tools/aapt2/format/Archive.cpp b/tools/aapt2/format/Archive.cpp
index 80c1618..e9a93d8 100644
--- a/tools/aapt2/format/Archive.cpp
+++ b/tools/aapt2/format/Archive.cpp
@@ -40,8 +40,8 @@
public:
DirectoryWriter() = default;
- bool Open(const StringPiece& out_dir) {
- dir_ = out_dir.to_string();
+ bool Open(StringPiece out_dir) {
+ dir_ = std::string(out_dir);
file::FileType type = file::GetFileType(dir_);
if (type == file::FileType::kNonExistant) {
error_ = "directory does not exist";
@@ -53,14 +53,14 @@
return true;
}
- bool StartEntry(const StringPiece& path, uint32_t flags) override {
+ bool StartEntry(StringPiece path, uint32_t flags) override {
if (file_) {
return false;
}
std::string full_path = dir_;
file::AppendPath(&full_path, path);
- file::mkdirs(file::GetStem(full_path).to_string());
+ file::mkdirs(std::string(file::GetStem(full_path)));
file_ = {::android::base::utf8::fopen(full_path.c_str(), "wb"), fclose};
if (!file_) {
@@ -91,7 +91,7 @@
return true;
}
- bool WriteFile(const StringPiece& path, uint32_t flags, io::InputStream* in) override {
+ bool WriteFile(StringPiece path, uint32_t flags, io::InputStream* in) override {
if (!StartEntry(path, flags)) {
return false;
}
@@ -132,8 +132,8 @@
public:
ZipFileWriter() = default;
- bool Open(const StringPiece& path) {
- file_ = {::android::base::utf8::fopen(path.to_string().c_str(), "w+b"), fclose};
+ bool Open(StringPiece path) {
+ file_ = {::android::base::utf8::fopen(path.data(), "w+b"), fclose};
if (!file_) {
error_ = SystemErrorCodeToString(errno);
return false;
@@ -142,7 +142,7 @@
return true;
}
- bool StartEntry(const StringPiece& path, uint32_t flags) override {
+ bool StartEntry(StringPiece path, uint32_t flags) override {
if (!writer_) {
return false;
}
@@ -182,7 +182,7 @@
return true;
}
- bool WriteFile(const StringPiece& path, uint32_t flags, io::InputStream* in) override {
+ bool WriteFile(StringPiece path, uint32_t flags, io::InputStream* in) override {
while (true) {
if (!StartEntry(path, flags)) {
return false;
@@ -257,7 +257,7 @@
} // namespace
std::unique_ptr<IArchiveWriter> CreateDirectoryArchiveWriter(android::IDiagnostics* diag,
- const StringPiece& path) {
+ StringPiece path) {
std::unique_ptr<DirectoryWriter> writer = util::make_unique<DirectoryWriter>();
if (!writer->Open(path)) {
diag->Error(android::DiagMessage(path) << writer->GetError());
@@ -267,7 +267,7 @@
}
std::unique_ptr<IArchiveWriter> CreateZipFileArchiveWriter(android::IDiagnostics* diag,
- const StringPiece& path) {
+ StringPiece path) {
std::unique_ptr<ZipFileWriter> writer = util::make_unique<ZipFileWriter>();
if (!writer->Open(path)) {
diag->Error(android::DiagMessage(path) << writer->GetError());
diff --git a/tools/aapt2/format/Archive.h b/tools/aapt2/format/Archive.h
index 55b0b2f..6cde753 100644
--- a/tools/aapt2/format/Archive.h
+++ b/tools/aapt2/format/Archive.h
@@ -46,12 +46,12 @@
public:
virtual ~IArchiveWriter() = default;
- virtual bool WriteFile(const android::StringPiece& path, uint32_t flags, io::InputStream* in) = 0;
+ virtual bool WriteFile(android::StringPiece path, uint32_t flags, io::InputStream* in) = 0;
// Starts a new entry and allows caller to write bytes to it sequentially.
// Only use StartEntry if code you do not control needs to write to a CopyingOutputStream.
// Prefer WriteFile instead of manually calling StartEntry/FinishEntry.
- virtual bool StartEntry(const android::StringPiece& path, uint32_t flags) = 0;
+ virtual bool StartEntry(android::StringPiece path, uint32_t flags) = 0;
// Called to finish writing an entry previously started by StartEntry.
// Prefer WriteFile instead of manually calling StartEntry/FinishEntry.
@@ -70,10 +70,10 @@
};
std::unique_ptr<IArchiveWriter> CreateDirectoryArchiveWriter(android::IDiagnostics* diag,
- const android::StringPiece& path);
+ android::StringPiece path);
std::unique_ptr<IArchiveWriter> CreateZipFileArchiveWriter(android::IDiagnostics* diag,
- const android::StringPiece& path);
+ android::StringPiece path);
} // namespace aapt
diff --git a/tools/aapt2/format/Archive_test.cpp b/tools/aapt2/format/Archive_test.cpp
index ceed374..3c44da7 100644
--- a/tools/aapt2/format/Archive_test.cpp
+++ b/tools/aapt2/format/Archive_test.cpp
@@ -50,7 +50,7 @@
}
std::unique_ptr<IArchiveWriter> MakeZipFileWriter(const std::string& output_path) {
- file::mkdirs(file::GetStem(output_path).to_string());
+ file::mkdirs(std::string(file::GetStem(output_path)));
std::remove(output_path.c_str());
StdErrDiagnostics diag;
diff --git a/tools/aapt2/format/binary/BinaryResourceParser.cpp b/tools/aapt2/format/binary/BinaryResourceParser.cpp
index 8291862..75dcba5 100644
--- a/tools/aapt2/format/binary/BinaryResourceParser.cpp
+++ b/tools/aapt2/format/binary/BinaryResourceParser.cpp
@@ -373,7 +373,7 @@
std::optional<ResourceNamedTypeRef> parsed_type = ParseResourceNamedType(type_str);
if (!parsed_type) {
diag_->Warn(android::DiagMessage(source_)
- << "invalid type name '" << type_str << "' for type with ID " << type->id);
+ << "invalid type name '" << type_str << "' for type with ID " << int(type->id));
return true;
}
diff --git a/tools/aapt2/format/binary/TableFlattener_test.cpp b/tools/aapt2/format/binary/TableFlattener_test.cpp
index d08b4a3..0f11685 100644
--- a/tools/aapt2/format/binary/TableFlattener_test.cpp
+++ b/tools/aapt2/format/binary/TableFlattener_test.cpp
@@ -84,7 +84,7 @@
return ::testing::AssertionSuccess();
}
- ::testing::AssertionResult Exists(ResTable* table, const StringPiece& expected_name,
+ ::testing::AssertionResult Exists(ResTable* table, StringPiece expected_name,
const ResourceId& expected_id,
const ConfigDescription& expected_config,
const uint8_t expected_data_type, const uint32_t expected_data,
diff --git a/tools/aapt2/format/binary/XmlFlattener.cpp b/tools/aapt2/format/binary/XmlFlattener.cpp
index 983e646..05f9751 100644
--- a/tools/aapt2/format/binary/XmlFlattener.cpp
+++ b/tools/aapt2/format/binary/XmlFlattener.cpp
@@ -79,7 +79,7 @@
}
void Visit(const xml::Text* node) override {
- std::string text = util::TrimWhitespace(node->text).to_string();
+ std::string text(util::TrimWhitespace(node->text));
// Skip whitespace only text nodes.
if (text.empty()) {
@@ -88,10 +88,10 @@
// Compact leading and trailing whitespace into a single space
if (isspace(node->text[0])) {
- text = ' ' + text;
+ text.insert(text.begin(), ' ');
}
- if (isspace(node->text[node->text.length() - 1])) {
- text = text + ' ';
+ if (isspace(node->text.back())) {
+ text += ' ';
}
ChunkWriter writer(buffer_);
@@ -165,7 +165,7 @@
// We are adding strings to a StringPool whose strings will be sorted and merged with other
// string pools. That means we can't encode the ID of a string directly. Instead, we defer the
// writing of the ID here, until after the StringPool is merged and sorted.
- void AddString(const StringPiece& str, uint32_t priority, android::ResStringPool_ref* dest,
+ void AddString(StringPiece str, uint32_t priority, android::ResStringPool_ref* dest,
bool treat_empty_string_as_null = false) {
if (str.empty() && treat_empty_string_as_null) {
// Some parts of the runtime treat null differently than empty string.
diff --git a/tools/aapt2/format/proto/ProtoSerialize_test.cpp b/tools/aapt2/format/proto/ProtoSerialize_test.cpp
index 5adc5e6..ecfdba8 100644
--- a/tools/aapt2/format/proto/ProtoSerialize_test.cpp
+++ b/tools/aapt2/format/proto/ProtoSerialize_test.cpp
@@ -35,7 +35,7 @@
class MockFileCollection : public io::IFileCollection {
public:
- MOCK_METHOD1(FindFile, io::IFile*(const StringPiece& path));
+ MOCK_METHOD1(FindFile, io::IFile*(StringPiece path));
MOCK_METHOD0(Iterator, std::unique_ptr<io::IFileCollectionIterator>());
MOCK_METHOD0(GetDirSeparator, char());
};
@@ -491,7 +491,7 @@
EXPECT_THAT(bp->value.data, Eq(ResourceUtils::MakeEmpty()->value.data));
}
-static void ExpectConfigSerializes(const StringPiece& config_str) {
+static void ExpectConfigSerializes(StringPiece config_str) {
const ConfigDescription expected_config = test::ParseConfigOrDie(config_str);
pb::Configuration pb_config;
SerializeConfig(expected_config, &pb_config);