Re: [Capy] Review Note

Peter Dimov via Boost <[email protected]> Sat, 27 Jun 2026 18:15:28 +0300
Newsgroups gmane.comp.lib.boost.devel
Message-ID <[email protected]>
Andrzej Krzemienski wrote:
> So it looks to me that Capy has at least two distinct parts with distinct
> purposes.
> 
> One is the proposed universal API for associating awaitables with their
> execution environment, and for propagating this environment through
> coroutines. One that hopefully every library dealing with awaitiables would
> want to adapt.
> 
> It comprises:
> * concepts IoAwaitable, IoRunnable, Executor, ExecutionContext
> * type-erased executor
> * synchronization primitives, strands
> * functions such as when_any, when_all
> * task<>
> 
> The other is "stream interfaces". Not stream implementations: just interfaces.
> It uses the former part.
> It comprises:
> * buffers
> * stream concepts
> * type erasure for streams
> * stream-related algorithms, such as read_until.

It's more than two parts. The second part is actually

1. Buffer sequences

* ConstBufferSequence, MutableBufferSequence concepts
* supporting primitives: buffer_begin, buffer_end, buffer_size, buffer_length, buffer_slice

2. Streams, stream-related algorithms

* read, write

3. Type erasure

4. DynamicBuffer

Here (1) has nothing to do with coroutines and is completely independent.

_______________________________________________
Boost mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://lists.boost.org/mailman3/lists/boost.lists.boost.org/
Archived at: https://lists.boost.org/archives/list/[email protected]/message/YDG7JOEU4C5TMIKL6YA2UWAT7SCHHGEM/