mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 09:46:09 +03:00
73 lines
2.0 KiB
C++
73 lines
2.0 KiB
C++
|
// Copyright 2016 The Chromium Authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
|
||
|
#include "net/http2/hpack/hpack_string.h"
|
||
|
|
||
|
#include <utility>
|
||
|
|
||
|
#include "base/logging.h"
|
||
|
#include "net/http2/platform/api/http2_string_utils.h"
|
||
|
|
||
|
namespace net {
|
||
|
|
||
|
HpackString::HpackString(const char* data) : str_(data) {}
|
||
|
HpackString::HpackString(Http2StringPiece str) : str_(str.as_string()) {}
|
||
|
HpackString::HpackString(Http2String str) : str_(std::move(str)) {}
|
||
|
HpackString::HpackString(const HpackString& other) : str_(other.str_) {}
|
||
|
HpackString::~HpackString() {}
|
||
|
|
||
|
Http2StringPiece HpackString::ToStringPiece() const {
|
||
|
return str_;
|
||
|
}
|
||
|
|
||
|
bool HpackString::operator==(const HpackString& other) const {
|
||
|
return str_ == other.str_;
|
||
|
}
|
||
|
bool HpackString::operator==(Http2StringPiece str) const {
|
||
|
return str == str_;
|
||
|
}
|
||
|
|
||
|
bool operator==(Http2StringPiece a, const HpackString& b) {
|
||
|
return b == a;
|
||
|
}
|
||
|
bool operator!=(Http2StringPiece a, const HpackString& b) {
|
||
|
return !(b == a);
|
||
|
}
|
||
|
bool operator!=(const HpackString& a, const HpackString& b) {
|
||
|
return !(a == b);
|
||
|
}
|
||
|
bool operator!=(const HpackString& a, Http2StringPiece b) {
|
||
|
return !(a == b);
|
||
|
}
|
||
|
std::ostream& operator<<(std::ostream& out, const HpackString& v) {
|
||
|
return out << v.ToString();
|
||
|
}
|
||
|
|
||
|
HpackStringPair::HpackStringPair(const HpackString& name,
|
||
|
const HpackString& value)
|
||
|
: name(name), value(value) {
|
||
|
DVLOG(3) << DebugString() << " ctor";
|
||
|
}
|
||
|
|
||
|
HpackStringPair::HpackStringPair(Http2StringPiece name, Http2StringPiece value)
|
||
|
: name(name), value(value) {
|
||
|
DVLOG(3) << DebugString() << " ctor";
|
||
|
}
|
||
|
|
||
|
HpackStringPair::~HpackStringPair() {
|
||
|
DVLOG(3) << DebugString() << " dtor";
|
||
|
}
|
||
|
|
||
|
Http2String HpackStringPair::DebugString() const {
|
||
|
return Http2StrCat("HpackStringPair(name=", name.ToString(),
|
||
|
", value=", value.ToString(), ")");
|
||
|
}
|
||
|
|
||
|
std::ostream& operator<<(std::ostream& os, const HpackStringPair& p) {
|
||
|
os << p.DebugString();
|
||
|
return os;
|
||
|
}
|
||
|
|
||
|
} // namespace net
|