userver: engine::io::ReadableBase Class Reference
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
engine::io::ReadableBase Class Referenceabstract

#include <userver/engine/io/common.hpp>

+ Inheritance diagram for engine::io::ReadableBase:

Public Member Functions

virtual bool IsValid () const =0
 Whether the stream is valid.
 
virtual bool WaitReadable (Deadline)=0
 Suspends current task until the stream has data available.
 
virtual size_t ReadSome (void *buf, size_t len, Deadline deadline)=0
 Receives at least one byte from the stream.
 
virtual size_t ReadAll (void *buf, size_t len, Deadline deadline)=0
 

Detailed Description

Interface for readable streams

Definition at line 21 of file common.hpp.

Member Function Documentation

◆ IsValid()

virtual bool engine::io::ReadableBase::IsValid ( ) const
pure virtual

Whether the stream is valid.

Implemented in engine::io::PipeReader, engine::io::Socket, and engine::io::TlsWrapper.

◆ ReadAll()

virtual size_t engine::io::ReadableBase::ReadAll ( void *  buf,
size_t  len,
Deadline  deadline 
)
pure virtual

Receives exactly len bytes from the stream.

Note
Can return less than len if stream is closed by peer.

Implemented in engine::io::PipeReader, engine::io::Socket, and engine::io::TlsWrapper.

◆ ReadSome()

virtual size_t engine::io::ReadableBase::ReadSome ( void *  buf,
size_t  len,
Deadline  deadline 
)
pure virtual

Receives at least one byte from the stream.

Implemented in engine::io::PipeReader, engine::io::Socket, and engine::io::TlsWrapper.

◆ WaitReadable()

virtual bool engine::io::ReadableBase::WaitReadable ( Deadline  )
pure virtual

Suspends current task until the stream has data available.

Implemented in engine::io::PipeReader, engine::io::Socket, and engine::io::TlsWrapper.


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