summaryrefslogtreecommitdiff
path: root/chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h')
-rw-r--r--chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h59
1 files changed, 0 insertions, 59 deletions
diff --git a/chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h b/chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h
deleted file mode 100644
index 54267db51a4..00000000000
--- a/chromium/net/third_party/quiche/src/spdy/core/spdy_header_storage.h
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef QUICHE_SPDY_CORE_SPDY_HEADER_STORAGE_H_
-#define QUICHE_SPDY_CORE_SPDY_HEADER_STORAGE_H_
-
-#include "absl/strings/string_view.h"
-#include "common/platform/api/quiche_export.h"
-#include "spdy/core/spdy_simple_arena.h"
-
-namespace spdy {
-
-// This class provides a backing store for absl::string_views. It previously
-// used custom allocation logic, but now uses an UnsafeArena instead. It has the
-// property that absl::string_views that refer to data in SpdyHeaderStorage are
-// never invalidated until the SpdyHeaderStorage is deleted or Clear() is
-// called.
-//
-// Write operations always append to the last block. If there is not enough
-// space to perform the write, a new block is allocated, and any unused space
-// is wasted.
-class QUICHE_EXPORT_PRIVATE SpdyHeaderStorage {
- public:
- SpdyHeaderStorage();
-
- SpdyHeaderStorage(const SpdyHeaderStorage&) = delete;
- SpdyHeaderStorage& operator=(const SpdyHeaderStorage&) = delete;
-
- SpdyHeaderStorage(SpdyHeaderStorage&& other) = default;
- SpdyHeaderStorage& operator=(SpdyHeaderStorage&& other) = default;
-
- absl::string_view Write(absl::string_view s);
-
- // If |s| points to the most recent allocation from arena_, the arena will
- // reclaim the memory. Otherwise, this method is a no-op.
- void Rewind(absl::string_view s);
-
- void Clear() { arena_.Reset(); }
-
- // Given a list of fragments and a separator, writes the fragments joined by
- // the separator to a contiguous region of memory. Returns a absl::string_view
- // pointing to the region of memory.
- absl::string_view WriteFragments(
- const std::vector<absl::string_view>& fragments,
- absl::string_view separator);
-
- size_t bytes_allocated() const { return arena_.status().bytes_allocated(); }
-
- private:
- SpdySimpleArena arena_;
-};
-
-// Writes |fragments| to |dst|, joined by |separator|. |dst| must be large
-// enough to hold the result. Returns the number of bytes written.
-QUICHE_EXPORT_PRIVATE size_t
-Join(char* dst,
- const std::vector<absl::string_view>& fragments,
- absl::string_view separator);
-
-} // namespace spdy
-
-#endif // QUICHE_SPDY_CORE_SPDY_HEADER_STORAGE_H_