Opened 7 years ago

#11913 new Feature Requests

free functions should support StreamBuffer concept

Reported by: vinnie.falco@… Owned by: chris_kohlhoff
Milestone: To Be Determined Component: asio
Version: Boost 1.61.0 Severity: Problem
Keywords: Cc:

Description

Functions like boost::asio::read which take boost::asio::basic_streambuf<> as parameters should instead take the stream buffer by template argument. A new concept StreamBuffer should be added under "Type Requirements" in the reference.

Rationale: boost free functions should work with user defined stream buffers that meet the requirements. The asio reference alludes to this functionality in the description for basic_streambuf:

"The basic_streambuf class's public interface is intended to permit the following implementation strategies:..."

However without support for types that meet the requirements, user defined stream buffers cannot provide alternate implementation strategies that work with asio free functions.

Example of a user defined streambuf with a compatible interface: https://github.com/ripple/rippled/blob/develop/src/beast/beast/asio/streambuf.h#L38

Change History (0)

Note: See TracTickets for help on using tickets.