1 // Copyright 2016 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "quiche/http2/hpack/http2_hpack_constants.h" 6 7 #include "absl/strings/str_cat.h" 8 9 namespace http2 { 10 HpackEntryTypeToString(HpackEntryType v)11std::string HpackEntryTypeToString(HpackEntryType v) { 12 switch (v) { 13 case HpackEntryType::kIndexedHeader: 14 return "kIndexedHeader"; 15 case HpackEntryType::kDynamicTableSizeUpdate: 16 return "kDynamicTableSizeUpdate"; 17 case HpackEntryType::kIndexedLiteralHeader: 18 return "kIndexedLiteralHeader"; 19 case HpackEntryType::kUnindexedLiteralHeader: 20 return "kUnindexedLiteralHeader"; 21 case HpackEntryType::kNeverIndexedLiteralHeader: 22 return "kNeverIndexedLiteralHeader"; 23 } 24 return absl::StrCat("UnknownHpackEntryType(", static_cast<int>(v), ")"); 25 } 26 operator <<(std::ostream & out,HpackEntryType v)27std::ostream& operator<<(std::ostream& out, HpackEntryType v) { 28 return out << HpackEntryTypeToString(v); 29 } 30 31 } // namespace http2 32