22 virtual size_t readsome(
char* buf,
size_t len ) = 0;
23 virtual size_t readsome(
const std::shared_ptr<char>& buf,
size_t len,
size_t offset ) = 0;
31 istream&
read(
const std::shared_ptr<char>& buf,
size_t len,
size_t offset = 0 );
33 void get(
char& c ) { c =
get(); }
45 virtual size_t writesome(
const char* buf,
size_t len ) = 0;
46 virtual size_t writesome(
const std::shared_ptr<const char>& buf,
size_t len,
size_t offset ) = 0;
47 virtual void close() = 0;
48 virtual void flush() = 0;
56 ostream&
write(
const std::shared_ptr<const char>& buf,
size_t len,
size_t offset = 0 );
68 return o.
write( array, N );
istream & read(char *buf, size_t len)
fc::istream & getline(fc::istream &, std::string &, char delim= '\n')
auto operator<<(U &u, const fwd< T, S, A > &f) -> typename detail::insert_op< U, T >::type
auto operator>>(U &u, fwd< T, S, A > &f) -> typename detail::extract_op< U, T >::type
defines wrappers for boost::asio functions
size_t write(AsyncWriteStream &s, const ConstBufferSequence &buf)
wraps boost::asio::async_write
ostream & write(const char *buf, size_t len)
virtual size_t readsome(char *buf, size_t len)=0
std::shared_ptr< istream > istream_ptr
std::shared_ptr< ostream > ostream_ptr