1#include "gtest/gtest.h"
18constexpr struct PropA :
public stdexec::__query<PropA> {
22 :
public stdexec::__query<FwdPropC>
23 , stdexec::forwarding_query_t {
24 using stdexec::__query<
FwdPropC>::operator();
28TEST(forwarding, queryable) {
30 auto env = stdexec::env{
31 stdexec::prop{
prop_a, 123},
35 static_assert(stdexec::__queryable_with<
decltype(env),
PropA>);
36 static_assert(stdexec::__queryable_with<
decltype(env),
FwdPropC>);
38 auto fwd_env = stdexec::__fwd_env(stdexec::__fwd_env(env));
43 stdexec::__env::__fwd<
44 stdexec::env<stdexec::prop<Tests::Impl::PropA, int>, stdexec::prop<Tests::Impl::FwdPropC, int>>&
48 static_assert(!stdexec::__queryable_with<
decltype(fwd_env),
PropA>);
49 static_assert(stdexec::__queryable_with<
decltype(fwd_env),
FwdPropC>);
Tests::Impl::FwdPropC fwd_prop_c
Tests::Impl::PropA prop_a