-
Notifications
You must be signed in to change notification settings - Fork 5
Description
let_value(sndr, fn) returns make-sender(let-tag, fn, sndr), which means that the let_value sender has one child. [exec.adapt.general] says:
A parent sender with a single child sender
sndrhas an associated attribute object equal toFWD-ENV(get_env(sndr)).
however, let_value(sndr, fn) does not know where it will be started or where it will complete in the general case. the function fn could return schedule(some-scheduler), making the let_value operation complete on some-scheduler. it would be wrong for the let_value(sndr, fn) sender to have sndr's completion schedulers or domains.
let_value/error/stopped must define impls-for<let_xxx_t>::get-attrs to return FWD-ENV(get_env(sndr)) except that handles the get_completion_scheduler_t<Tag> (for any completion tag Tag) and get_domain_t queries specially.