Replace quiche::QuicheStringPiece with absl::string_view.
PiperOrigin-RevId: 336792322
Change-Id: I930e033b8097de7504a93b906618e69fc65be435
diff --git a/http2/hpack/tools/hpack_block_builder.cc b/http2/hpack/tools/hpack_block_builder.cc
index 04dec31..fa0ec4d 100644
--- a/http2/hpack/tools/hpack_block_builder.cc
+++ b/http2/hpack/tools/hpack_block_builder.cc
@@ -55,7 +55,7 @@
}
void HpackBlockBuilder::AppendString(bool is_huffman_encoded,
- quiche::QuicheStringPiece str) {
+ absl::string_view str) {
uint8_t high_bits = is_huffman_encoded ? 0x80 : 0;
uint8_t prefix_length = 7;
AppendHighBitsAndVarint(high_bits, prefix_length, str.size());
diff --git a/http2/hpack/tools/hpack_block_builder.h b/http2/hpack/tools/hpack_block_builder.h
index 55de99f..46da803 100644
--- a/http2/hpack/tools/hpack_block_builder.h
+++ b/http2/hpack/tools/hpack_block_builder.h
@@ -20,8 +20,8 @@
#include <cstdint>
#include <string>
+#include "absl/strings/string_view.h"
#include "net/third_party/quiche/src/http2/hpack/http2_hpack_constants.h"
-#include "net/third_party/quiche/src/common/platform/api/quiche_string_piece.h"
#include "net/third_party/quiche/src/common/platform/api/quiche_test.h"
namespace http2 {
@@ -29,7 +29,7 @@
class HpackBlockBuilder {
public:
- explicit HpackBlockBuilder(quiche::QuicheStringPiece initial_contents)
+ explicit HpackBlockBuilder(absl::string_view initial_contents)
: buffer_(initial_contents.data(), initial_contents.size()) {}
HpackBlockBuilder() {}
~HpackBlockBuilder() {}
@@ -51,7 +51,7 @@
void AppendNameIndexAndLiteralValue(HpackEntryType entry_type,
uint64_t name_index,
bool value_is_huffman_encoded,
- quiche::QuicheStringPiece value) {
+ absl::string_view value) {
// name_index==0 would indicate that the entry includes a literal name.
// Call AppendLiteralNameAndValue in that case.
EXPECT_NE(0u, name_index);
@@ -61,9 +61,9 @@
void AppendLiteralNameAndValue(HpackEntryType entry_type,
bool name_is_huffman_encoded,
- quiche::QuicheStringPiece name,
+ absl::string_view name,
bool value_is_huffman_encoded,
- quiche::QuicheStringPiece value) {
+ absl::string_view value) {
AppendEntryTypeAndVarint(entry_type, 0);
AppendString(name_is_huffman_encoded, name);
AppendString(value_is_huffman_encoded, value);
@@ -84,7 +84,7 @@
// Append a header string (i.e. a header name or value) in HPACK format.
// Does NOT perform Huffman encoding.
- void AppendString(bool is_huffman_encoded, quiche::QuicheStringPiece str);
+ void AppendString(bool is_huffman_encoded, absl::string_view str);
private:
std::string buffer_;
diff --git a/http2/hpack/tools/hpack_block_builder_test.cc b/http2/hpack/tools/hpack_block_builder_test.cc
index de35781..d162fba 100644
--- a/http2/hpack/tools/hpack_block_builder_test.cc
+++ b/http2/hpack/tools/hpack_block_builder_test.cc
@@ -120,8 +120,7 @@
'\xab', '\x90', '\xf4', '\xff'};
b.AppendNameIndexAndLiteralValue(
HpackEntryType::kIndexedLiteralHeader, 1, kCompressed,
- quiche::QuicheStringPiece(kHuffmanWwwExampleCom,
- sizeof kHuffmanWwwExampleCom));
+ absl::string_view(kHuffmanWwwExampleCom, sizeof kHuffmanWwwExampleCom));
EXPECT_EQ(17u, b.size());
// Hex dump of encoded data (copied from RFC):
@@ -141,7 +140,7 @@
EXPECT_EQ(1u, b.size());
const char kData[] = {'\x20'};
- quiche::QuicheStringPiece expected(kData, sizeof kData);
+ absl::string_view expected(kData, sizeof kData);
EXPECT_EQ(expected, b.buffer());
}
{
@@ -150,7 +149,7 @@
EXPECT_EQ(3u, b.size());
const char kData[] = {'\x3f', '\xe1', '\x1f'};
- quiche::QuicheStringPiece expected(kData, sizeof kData);
+ absl::string_view expected(kData, sizeof kData);
EXPECT_EQ(expected, b.buffer());
}
{
@@ -160,7 +159,7 @@
const char kData[] = {'\x3f', '\xe1', '\x9f', '\x94',
'\xa5', '\x8d', '\x1d'};
- quiche::QuicheStringPiece expected(kData, sizeof kData);
+ absl::string_view expected(kData, sizeof kData);
EXPECT_EQ(expected, b.buffer());
}
}
diff --git a/http2/hpack/tools/hpack_example.cc b/http2/hpack/tools/hpack_example.cc
index 31de86d..1087875 100644
--- a/http2/hpack/tools/hpack_example.cc
+++ b/http2/hpack/tools/hpack_example.cc
@@ -15,8 +15,7 @@
namespace test {
namespace {
-void HpackExampleToStringOrDie(quiche::QuicheStringPiece example,
- std::string* output) {
+void HpackExampleToStringOrDie(absl::string_view example, std::string* output) {
while (!example.empty()) {
const char c0 = example[0];
if (isxdigit(c0)) {
@@ -34,7 +33,7 @@
if (!example.empty() && example[0] == '|') {
// Start of a comment. Skip to end of line or of input.
auto pos = example.find('\n');
- if (pos == quiche::QuicheStringPiece::npos) {
+ if (pos == absl::string_view::npos) {
// End of input.
break;
}
@@ -50,7 +49,7 @@
} // namespace
-std::string HpackExampleToStringOrDie(quiche::QuicheStringPiece example) {
+std::string HpackExampleToStringOrDie(absl::string_view example) {
std::string output;
HpackExampleToStringOrDie(example, &output);
return output;
diff --git a/http2/hpack/tools/hpack_example.h b/http2/hpack/tools/hpack_example.h
index e86c116..de203cc 100644
--- a/http2/hpack/tools/hpack_example.h
+++ b/http2/hpack/tools/hpack_example.h
@@ -7,7 +7,7 @@
#include <string>
-#include "net/third_party/quiche/src/common/platform/api/quiche_string_piece.h"
+#include "absl/strings/string_view.h"
// Parses HPACK examples in the format seen in the HPACK specification,
// RFC 7541. For example:
@@ -24,7 +24,7 @@
namespace http2 {
namespace test {
-std::string HpackExampleToStringOrDie(quiche::QuicheStringPiece example);
+std::string HpackExampleToStringOrDie(absl::string_view example);
} // namespace test
} // namespace http2
diff --git a/http2/tools/http2_frame_builder.cc b/http2/tools/http2_frame_builder.cc
index c42c215..2ba8778 100644
--- a/http2/tools/http2_frame_builder.cc
+++ b/http2/tools/http2_frame_builder.cc
@@ -30,12 +30,12 @@
Append(v);
}
-void Http2FrameBuilder::Append(quiche::QuicheStringPiece s) {
+void Http2FrameBuilder::Append(absl::string_view s) {
Http2StrAppend(&buffer_, s);
}
void Http2FrameBuilder::AppendBytes(const void* data, uint32_t num_bytes) {
- Append(quiche::QuicheStringPiece(static_cast<const char*>(data), num_bytes));
+ Append(absl::string_view(static_cast<const char*>(data), num_bytes));
}
void Http2FrameBuilder::AppendZeroes(size_t num_zero_bytes) {
@@ -143,7 +143,7 @@
// Methods for changing existing buffer contents.
-void Http2FrameBuilder::WriteAt(quiche::QuicheStringPiece s, size_t offset) {
+void Http2FrameBuilder::WriteAt(absl::string_view s, size_t offset) {
ASSERT_LE(offset, buffer_.size());
size_t len = offset + s.size();
if (len > buffer_.size()) {
@@ -157,8 +157,7 @@
void Http2FrameBuilder::WriteBytesAt(const void* data,
uint32_t num_bytes,
size_t offset) {
- WriteAt(quiche::QuicheStringPiece(static_cast<const char*>(data), num_bytes),
- offset);
+ WriteAt(absl::string_view(static_cast<const char*>(data), num_bytes), offset);
}
void Http2FrameBuilder::WriteUInt24At(uint32_t value, size_t offset) {
diff --git a/http2/tools/http2_frame_builder.h b/http2/tools/http2_frame_builder.h
index 724c2b2..a4062de 100644
--- a/http2/tools/http2_frame_builder.h
+++ b/http2/tools/http2_frame_builder.h
@@ -18,9 +18,9 @@
#include <cstdint>
#include <string>
+#include "absl/strings/string_view.h"
#include "net/third_party/quiche/src/http2/http2_constants.h"
#include "net/third_party/quiche/src/http2/http2_structures.h"
-#include "net/third_party/quiche/src/common/platform/api/quiche_string_piece.h"
namespace http2 {
namespace test {
@@ -39,7 +39,7 @@
// Methods for appending to the end of the buffer.
// Append a sequence of bytes from various sources.
- void Append(quiche::QuicheStringPiece s);
+ void Append(absl::string_view s);
void AppendBytes(const void* data, uint32_t num_bytes);
// Append an array of type T[N] to the string. Intended for tests with arrays
@@ -80,7 +80,7 @@
// Methods for changing existing buffer contents (mostly focused on updating
// the payload length).
- void WriteAt(quiche::QuicheStringPiece s, size_t offset);
+ void WriteAt(absl::string_view s, size_t offset);
void WriteBytesAt(const void* data, uint32_t num_bytes, size_t offset);
void WriteUInt24At(uint32_t value, size_t offset);
diff --git a/http2/tools/random_decoder_test.h b/http2/tools/random_decoder_test.h
index 86acbb8..4e87c49 100644
--- a/http2/tools/random_decoder_test.h
+++ b/http2/tools/random_decoder_test.h
@@ -17,12 +17,12 @@
#include <memory>
#include <type_traits>
+#include "absl/strings/string_view.h"
#include "net/third_party/quiche/src/http2/decoder/decode_buffer.h"
#include "net/third_party/quiche/src/http2/decoder/decode_status.h"
#include "net/third_party/quiche/src/http2/platform/api/http2_logging.h"
#include "net/third_party/quiche/src/http2/platform/api/http2_test_helpers.h"
#include "net/third_party/quiche/src/http2/test_tools/http2_random.h"
-#include "net/third_party/quiche/src/common/platform/api/quiche_string_piece.h"
#include "net/third_party/quiche/src/common/platform/api/quiche_test.h"
namespace http2 {
@@ -31,9 +31,8 @@
// Some helpers.
template <typename T, size_t N>
-quiche::QuicheStringPiece ToStringPiece(T (&data)[N]) {
- return quiche::QuicheStringPiece(reinterpret_cast<const char*>(data),
- N * sizeof(T));
+absl::string_view ToStringPiece(T (&data)[N]) {
+ return absl::string_view(reinterpret_cast<const char*>(data), N * sizeof(T));
}
// Overwrite the enum with some random value, probably not a valid value for
diff --git a/http2/tools/random_util.cc b/http2/tools/random_util.cc
index a0af07a..01571ed 100644
--- a/http2/tools/random_util.cc
+++ b/http2/tools/random_util.cc
@@ -12,7 +12,7 @@
// Here "word" means something that starts with a lower-case letter, and has
// zero or more additional characters that are numbers or lower-case letters.
std::string GenerateHttp2HeaderName(size_t len, Http2Random* rng) {
- quiche::QuicheStringPiece alpha_lc = "abcdefghijklmnopqrstuvwxyz";
+ absl::string_view alpha_lc = "abcdefghijklmnopqrstuvwxyz";
// If the name is short, just make it one word.
if (len < 8) {
return rng->RandStringWithAlphabet(len, alpha_lc);
@@ -20,8 +20,7 @@
// If the name is longer, ensure it starts with a word, and after that may
// have any character in alphanumdash_lc. 4 is arbitrary, could be as low
// as 1.
- quiche::QuicheStringPiece alphanumdash_lc =
- "abcdefghijklmnopqrstuvwxyz0123456789-";
+ absl::string_view alphanumdash_lc = "abcdefghijklmnopqrstuvwxyz0123456789-";
return rng->RandStringWithAlphabet(4, alpha_lc) +
rng->RandStringWithAlphabet(len - 4, alphanumdash_lc);
}