Skip to content

[P2300] enhancements: receiver_of, sender_of improvements#5920

Merged
bors[bot] merged 5 commits intoTheHPXProject:masterfrom
SAtacker:p2300_enhancements
Jul 1, 2022
Merged

[P2300] enhancements: receiver_of, sender_of improvements#5920
bors[bot] merged 5 commits intoTheHPXProject:masterfrom
SAtacker:p2300_enhancements

Conversation

@SAtacker
Copy link
Copy Markdown
Contributor

@SAtacker SAtacker commented Jun 12, 2022

Signed-off-by: Shreyas Atre shreyasatre16@gmail.com

Proposed Changes

  • The receiver_of concept takes a receiver and an instance of the completion_signatures<> class template.
  • The sender_of concept defines the requirements for a sender type that on successful completion sends the specified set of value types.

Checklist

  • receiver_of tests
  • sender_of tests

@SAtacker SAtacker force-pushed the p2300_enhancements branch 2 times, most recently from 11b532b to d14fc26 Compare June 18, 2022 22:04
SAtacker added 3 commits June 23, 2022 22:43
Signed-off-by: Shreyas Atre <shreyasatre16@gmail.com>
* Using templates itself to unpack the types in a
  tuple within a variant.

Signed-off-by: Shreyas Atre <shreyasatre16@gmail.com>
- If sender supports sends_stopped (i.e. it is true) then is_receiver_of
  is called.
- Otherwise it checks for the value_types and error_types of those
- Added tests all the cases

Signed-off-by: Shreyas Atre <shreyasatre16@gmail.com>
@SAtacker SAtacker force-pushed the p2300_enhancements branch from 22f1bbb to 1590b49 Compare June 23, 2022 17:13
@SAtacker SAtacker marked this pull request as ready for review June 23, 2022 17:13
@hkaiser hkaiser added type: enhancement type: compatibility issue category: senders/receivers Implementations of the p0443r14 / p2300 + p1897 proposals labels Jun 24, 2022
@hkaiser hkaiser added this to the 1.9.0 milestone Jun 24, 2022
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
Comment thread libs/core/execution_base/include/hpx/execution_base/completion_signatures.hpp Outdated
1. Using `typename` instead of `class` [ref](https://github.com/STEllAR-GROUP/hpx/pull/5920/files#r906386203).
2. Use `meta::pack` instead of `hpx::variant`,`hpx::tuple` [ref](https://github.com/STEllAR-GROUP/hpx/pull/5920/files#r906385013).
3. Modify `sender_of` as per P2300 [ref](https://github.com/STEllAR-GROUP/hpx/pull/5920/files#r906393349).

Signed-off-by: Shreyas Atre <shreyasatre16@gmail.com>
@SAtacker SAtacker force-pushed the p2300_enhancements branch from 898ed20 to eb8bcbd Compare June 26, 2022 07:46
Signed-off-by: Shreyas Atre <shreyasatre16@gmail.com>
Copy link
Copy Markdown
Contributor

@hkaiser hkaiser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@hkaiser
Copy link
Copy Markdown
Contributor

hkaiser commented Jul 1, 2022

bors merge

@bors
Copy link
Copy Markdown

bors bot commented Jul 1, 2022

Build succeeded:

@bors bors bot merged commit eb8686c into TheHPXProject:master Jul 1, 2022
@hkaiser hkaiser modified the milestones: 1.9.0, 1.8.1 Jul 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category: senders/receivers Implementations of the p0443r14 / p2300 + p1897 proposals type: compatibility issue type: enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants