A11 (C++ runtime)
Native C++ implementation of the A11 action and streaming runtime
Loading...
Searching...
No Matches
a11::net::Http2ResponseStream::State Struct Referenceabstract

Public Member Functions

 State (size_t maximum_buffered_bytes)
 
std::int32_t stream_id ABSL_GUARDED_BY (mu)
 
size_t buffered_bytes ABSL_GUARDED_BY (mu)=0
 
std::deque< std::string > chunks ABSL_GUARDED_BY (mu)
 
bool headers_ready ABSL_GUARDED_BY (mu)
 
bool done ABSL_GUARDED_BY (mu)
 
absl::Status status ABSL_GUARDED_BY (mu)
 
std::shared_ptr< a11::Promise< std::optional< std::string > > > pending_read ABSL_GUARDED_BY (mu)
 
std::function< absl::Status(absl::Status)> cancel ABSL_GUARDED_BY (mu)
 
void SetHeaders (HttpResponseHead head)
 
absl::Status Push (std::string data)
 
void Finish (absl::Status completion)
 

Public Attributes

thread::Mutex mu
 
const size_t max_buffered_bytes
 
const std::shared_ptr< a11::Promise< HttpResponseHead > > headers_promise
 
const a11::Future< HttpResponseHeadheaders_future
 
const std::shared_ptr< a11::Promise< a11::Unit > > done_promise
 
const a11::Task done_future
 

Constructor & Destructor Documentation

◆ State()

a11::net::Http2ResponseStream::State::State ( size_t  maximum_buffered_bytes)
inlineexplicit

Member Function Documentation

◆ ABSL_GUARDED_BY() [1/8]

std::int32_t stream_id a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [2/8]

std::deque< std::string > chunks a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [3/8]

bool headers_ready a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [4/8]

bool done a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [5/8]

absl::Status status a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [6/8]

std::shared_ptr< a11::Promise< std::optional< std::string > > > pending_read a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [7/8]

std::function< absl::Status(absl::Status)> cancel a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )

◆ ABSL_GUARDED_BY() [8/8]

size_t buffered_bytes a11::net::Http2ResponseStream::State::ABSL_GUARDED_BY ( mu  )
pure virtual

◆ Finish()

void a11::net::Http2ResponseStream::State::Finish ( absl::Status  completion)
inline

◆ Push()

absl::Status a11::net::Http2ResponseStream::State::Push ( std::string  data)
inline

◆ SetHeaders()

void a11::net::Http2ResponseStream::State::SetHeaders ( HttpResponseHead  head)
inline

Member Data Documentation

◆ done_future

const a11::Task a11::net::Http2ResponseStream::State::done_future

◆ done_promise

const std::shared_ptr<a11::Promise<a11::Unit> > a11::net::Http2ResponseStream::State::done_promise

◆ headers_future

const a11::Future<HttpResponseHead> a11::net::Http2ResponseStream::State::headers_future

◆ headers_promise

const std::shared_ptr<a11::Promise<HttpResponseHead> > a11::net::Http2ResponseStream::State::headers_promise

◆ max_buffered_bytes

const size_t a11::net::Http2ResponseStream::State::max_buffered_bytes

◆ mu

thread::Mutex a11::net::Http2ResponseStream::State::mu
mutable

The documentation for this struct was generated from the following file: