// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef NET_HTTP_STRUCTURED_HEADERS_H_ #define NET_HTTP_STRUCTURED_HEADERS_H_ #include #include "base/strings/string_piece.h" #include "net/third_party/quiche/src/quiche/common/structured_headers.h" #include "third_party/abseil-cpp/absl/types/optional.h" namespace net::structured_headers { using Item = quiche::structured_headers::Item; using ParameterisedIdentifier = quiche::structured_headers::ParameterisedIdentifier; using ParameterizedItem = quiche::structured_headers::ParameterizedItem; using ParameterizedMember = quiche::structured_headers::ParameterizedMember; using DictionaryMember = quiche::structured_headers::DictionaryMember; using Dictionary = quiche::structured_headers::Dictionary; using ParameterisedList = quiche::structured_headers::ParameterisedList; using ListOfLists = quiche::structured_headers::ListOfLists; using List = quiche::structured_headers::List; using Parameters = quiche::structured_headers::Parameters; inline absl::optional ParseItem(base::StringPiece str) { return quiche::structured_headers::ParseItem(str); } inline absl::optional ParseBareItem(base::StringPiece str) { return quiche::structured_headers::ParseBareItem(str); } inline absl::optional ParseParameterisedList( base::StringPiece str) { return quiche::structured_headers::ParseParameterisedList(str); } inline absl::optional ParseListOfLists(base::StringPiece str) { return quiche::structured_headers::ParseListOfLists(str); } inline absl::optional ParseList(base::StringPiece str) { return quiche::structured_headers::ParseList(str); } inline absl::optional ParseDictionary(base::StringPiece str) { return quiche::structured_headers::ParseDictionary(str); } inline absl::optional SerializeItem(const Item& value) { return quiche::structured_headers::SerializeItem(value); } inline absl::optional SerializeItem( const ParameterizedItem& value) { return quiche::structured_headers::SerializeItem(value); } inline absl::optional SerializeList(const List& value) { return quiche::structured_headers::SerializeList(value); } inline absl::optional SerializeDictionary( const Dictionary& value) { return quiche::structured_headers::SerializeDictionary(value); } } // namespace net::structured_headers #endif // NET_HTTP_STRUCTURED_HEADERS_H_