1#include "gtest/gtest.h"
21TEST(TrackingAllocatorTest, write_read_env) {
22 std::atomic<size_t> count = 0;
24 stdexec::sender
auto sndr =
25 stdexec::read_env(stdexec::get_allocator) | stdexec::then([](
auto allocator) {
31 const auto [val] = stdexec::sync_wait(std::move(sndr)).value();
38TEST(TrackingAllocatorTest, forwarded_through_then) {
39 static_assert(stdexec::forwarding_query(stdexec::get_allocator));
41 std::atomic<size_t> count = 0;
43 stdexec::sender
auto sndr =
44 stdexec::read_env(stdexec::get_allocator)
46 | stdexec::then([](
auto&& value) {
return value; })
49 const auto [val] = stdexec::sync_wait(std::move(sndr)).value();
auto round_trip_allocate(Allocator &allocator, T &&value)
A minimal tracking allocator.