implement `fork( closure0, closure1,... )` and `select<1,2,3>()` adaptors
Open
Nobody has claimed this yet.
enhancement
P2
- Dominant language
- C++
- Stars
- 2.4k
- Forks
- 270
- Avg merge
- 3d 6h
- Merged PRs (30d)
- 39
Description
snd | fork( closure0, closure1 )
would be like:
just(split(snd))
| let_value([](auto snd) {
return when_all(snd | closure0, snd | closure1);
})
It could be useful in tandem with a no-op pass_through adaptor and a select<I,J,K> adaptor that forwards only the I-th, J-th, K-th value. Then we could do something like:
snd | fork( pass_through, select<1,2,3> | then(f) )
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no implementation files or tests. Start by reviewing existing adaptor entry points and the semantics of split, let_value, and when_all; done means fork, pass_through, and select<I,J,K> support the shown composition with matching tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100