#include "quiche/quic/core/http/web_transport_stream_adapter.h"
#include <cstddef>
#include <limits>
#include <optional>
#include <string>
#include <vector>
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "absl/strings/string_view.h"
#include "absl/types/span.h"
#include "quiche/quic/core/http/web_transport_http3.h"
#include "quiche/quic/core/quic_error_codes.h"
#include "quiche/quic/core/quic_session.h"
#include "quiche/quic/core/quic_stream.h"
#include "quiche/quic/core/quic_stream_priority.h"
#include "quiche/quic/core/quic_stream_sequencer.h"
#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/core/web_transport_interface.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
#include "quiche/quic/platform/api/quic_flags.h"
#include "quiche/quic/platform/api/quic_logging.h"
#include "quiche/common/quiche_mem_slice_storage.h"
#include "quiche/common/quiche_stream.h"
#include "quiche/web_transport/web_transport.h"
namespace quic {
WebTransportStreamAdapter::WebTransportStreamAdapter(
QuicSession* session, QuicStream* stream, QuicStreamSequencer* sequencer,
std::optional<QuicStreamId> session_id)
: … { … }
WebTransportStream::ReadResult WebTransportStreamAdapter::Read(
absl::Span<char> buffer) { … }
WebTransportStream::ReadResult WebTransportStreamAdapter::Read(
std::string* output) { … }
absl::Status WebTransportStreamAdapter::Writev(
absl::Span<const absl::string_view> data,
const quiche::StreamWriteOptions& options) { … }
absl::Status WebTransportStreamAdapter::CheckBeforeStreamWrite() const { … }
bool WebTransportStreamAdapter::CanWrite() const { … }
void WebTransportStreamAdapter::AbruptlyTerminate(absl::Status error) { … }
size_t WebTransportStreamAdapter::ReadableBytes() const { … }
quiche::ReadStream::PeekResult
WebTransportStreamAdapter::PeekNextReadableRegion() const { … }
bool WebTransportStreamAdapter::SkipBytes(size_t bytes) { … }
void WebTransportStreamAdapter::OnDataAvailable() { … }
void WebTransportStreamAdapter::OnCanWriteNewData() { … }
void WebTransportStreamAdapter::ResetWithUserCode(
WebTransportStreamError error) { … }
void WebTransportStreamAdapter::SendStopSending(WebTransportStreamError error) { … }
void WebTransportStreamAdapter::SetPriority(
const webtransport::StreamPriority& priority) { … }
void WebTransportStreamAdapter::SetSessionId(QuicStreamId id) { … }
}