Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ FetchContent_Declare(
task
# SOURCE_DIR ${CMAKE_SOURCE_DIR}/../task
GIT_REPOSITORY https://github.com/bemanproject/task
GIT_TAG 6ff5b89
GIT_TAG 1679185
FIND_PACKAGE_ARGS 0.2.0 EXACT NAMES beman.task COMPONENTS task_headers
)
FetchContent_MakeAvailable(task)
Expand Down
10 changes: 5 additions & 5 deletions examples/demo_algorithm.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ inline constexpr when_any_t when_any{};

template <demo::ex::receiver Receiver, typename Fun>
struct demo::into_error_t::receiver {
using receiver_concept = ex::receiver_t;
using receiver_concept = ex::receiver_tag;

Receiver receiver;
Fun fun;
Expand All @@ -184,7 +184,7 @@ struct demo::into_error_t::receiver {

template <demo::ex::sender Sender, typename Fun>
struct demo::into_error_t::sender {
using sender_concept = ex::sender_t;
using sender_concept = ex::sender_tag;
template <typename, typename... Env>
static consteval auto get_completion_signatures() {
// static_assert(sizeof...(Env) <= 1u);
Expand Down Expand Up @@ -320,7 +320,7 @@ struct demo::when_any_t::env {

template <::std::size_t, ::demo::ex::receiver Receiver, typename Value, typename Error>
struct demo::when_any_t::receiver {
using receiver_concept = ::demo::ex::receiver_t;
using receiver_concept = ::demo::ex::receiver_tag;
demo::when_any_t::state_value<Receiver, Value, Error>* state;

auto get_env() const noexcept -> demo::when_any_t::env<ex::env_of_t<Receiver>> { return {this->state}; }
Expand Down Expand Up @@ -355,7 +355,7 @@ struct demo::when_any_t::state<::std::index_sequence<I...>, Receiver, Value, Err

template <::std::size_t J>
using receiver_type = when_any_t::receiver<J, Receiver, value_type, error_type>;
using operation_state_concept = ex::operation_state_t;
using operation_state_concept = ex::operation_state_tag;
using states_type = ::beman::execution::detail::product_type<decltype(demo::ex::connect(
::std::declval<Sender>(), ::std::declval<receiver_type<I>>()))...>;
states_type states;
Expand All @@ -374,7 +374,7 @@ struct demo::when_any_t::state<::std::index_sequence<I...>, Receiver, Value, Err
template <demo::ex::sender... Sender>
struct demo::when_any_t::sender {
::beman::execution::detail::product_type<::std::remove_cvref_t<Sender>...> sender;
using sender_concept = ex::sender_t;
using sender_concept = ex::sender_tag;
template <typename, typename Env>
static consteval auto get_completion_signatures() {
return ::beman::execution::detail::meta::unique<::beman::execution::detail::meta::combine<
Expand Down
2 changes: 1 addition & 1 deletion examples/demo_scope.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ class scope {
};

struct receiver {
using receiver_concept = ex::receiver_t;
using receiver_concept = ex::receiver_tag;
scope* self;
job_base* state{};

Expand Down
4 changes: 2 additions & 2 deletions examples/demo_stream.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ struct context {
struct memory {
template <ex::receiver Receiver, typename Buffer>
struct state : memory_base {
using operation_state_concept = ex::operation_state_t;
using operation_state_concept = ex::operation_state_tag;
Receiver receiver;
Buffer buffer;
memory* self;
Expand All @@ -86,7 +86,7 @@ struct memory {
};
template <typename Buffer>
struct receive_sender {
using sender_concept = ex::sender_t;
using sender_concept = ex::sender_tag;
template <typename...>
static consteval auto get_completion_signatures() {
return ex::completion_signatures<ex::set_value_t(std::size_t)>{};
Expand Down
6 changes: 3 additions & 3 deletions examples/demo_task.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ struct task {
auto query(ex::get_stop_token_t) const noexcept -> ex::inplace_stop_token;
};
struct receiver {
using receiver_concept = ex::receiver_t;
using receiver_concept = ex::receiver_tag;

sender_awaiter* awaiter{};

Expand Down Expand Up @@ -176,7 +176,7 @@ struct task {

template <typename Receiver>
struct state : task_state_base<::std::decay_t<Result>> {
using operation_state_concept = ex::operation_state_t;
using operation_state_concept = ex::operation_state_tag;
struct callback_t {
state* object;
auto operator()() const {
Expand Down Expand Up @@ -219,7 +219,7 @@ struct task {

unique_handle handle;

using sender_concept = ::beman::net::detail::ex::sender_t;
using sender_concept = ::beman::net::detail::ex::sender_tag;
using completion_signatures =
::beman::net::detail::ex::completion_signatures<::beman::net::detail::ex::set_error_t(::std::exception_ptr),
::beman::net::detail::ex::set_stopped_t(),
Expand Down
4 changes: 2 additions & 2 deletions examples/postgres.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ struct result {
// PQsetChunkedMode(PGconn *conn, int arg) - set chunked mode, return 0 on failure

struct exec {
using sender_concept = ex::sender_t;
using sender_concept = ex::sender_tag;
using completion_signatures = ex::completion_signatures<ex::set_value_t(result), ex::set_error_t(error)>;
template <typename...>
static consteval completion_signatures get_completion_signatures() noexcept {
Expand All @@ -67,7 +67,7 @@ struct exec {

template <typename Receiver>
struct state {
using operation_state_concept = ex::operation_state_t;
using operation_state_concept = ex::operation_state_tag;

struct env {
using error_types = ex::completion_signatures<ex::set_error_t(error)>;
Expand Down
4 changes: 2 additions & 2 deletions examples/print_completions.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@ inline constexpr print_completion_signatures_t<T> print_completion_signatures{};
struct print_completions_t {
template <ex::sender Sender>
struct sender {
using sender_concept = ex::sender_t;
using sender_concept = ex::sender_tag;
template <typename, typename... Env>
static consteval auto get_completion_signatures() noexcept {
return ex::get_completion_signatures<Sender, Env...>();
}

template <typename Receiver>
struct state {
using operation_state_concept = ex::operation_state_t;
using operation_state_concept = ex::operation_state_tag;
using state_t = ex::connect_result_t<Sender, Receiver&&>;
using env_t = ex::env_of_t<Receiver>;

Expand Down
2 changes: 1 addition & 1 deletion examples/server.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ auto make_client(auto client) -> demo::task<void> {
}

struct receiver {
using receiver_concept = ex::receiver_t;
using receiver_concept = ex::receiver_tag;
auto set_error(auto&&) && noexcept -> void {}
auto set_stopped() && noexcept -> void {}
auto set_value(auto&&...) && noexcept -> void {}
Expand Down
2 changes: 1 addition & 1 deletion examples/sync_run.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ struct sync_run_env {
};
struct sync_run_receiver {
ex::run_loop& loop;
using receiver_concept = ex::receiver_t;
using receiver_concept = ex::receiver_tag;

auto get_env() const noexcept { return sync_run_env{this->loop}; }
auto set_value() noexcept { this->loop.finish(); }
Expand Down
8 changes: 4 additions & 4 deletions include/beman/net/detail/execution.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,13 @@ using ::beman::execution::get_stop_token;
using ::beman::execution::get_stop_token_t;

using ::beman::execution::operation_state;
using ::beman::execution::operation_state_t;
using ::beman::execution::operation_state_tag;
using ::beman::execution::receiver;
using ::beman::execution::receiver_t;
using ::beman::execution::receiver_tag;
using ::beman::execution::scheduler;
using ::beman::execution::scheduler_t;
using ::beman::execution::scheduler_tag;
using ::beman::execution::sender;
using ::beman::execution::sender_t;
using ::beman::execution::sender_tag;

using ::beman::execution::sender_in;

Expand Down
6 changes: 3 additions & 3 deletions include/beman/net/detail/into_expected.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ struct into_expected_t : beman::execution::sender_adaptor_closure<into_expected_
template <beman::execution::sender Sender, beman::execution::receiver Receiver>
struct state {
struct receiver {
using receiver_concept = beman::execution::receiver_t;
using receiver_concept = beman::execution::receiver_tag;
using env_t = beman::execution::env_of_t<Receiver>;
Receiver* _receiver;
auto get_env() const noexcept { return beman::execution::get_env(*this->_receiver); }
Expand All @@ -88,7 +88,7 @@ struct into_expected_t : beman::execution::sender_adaptor_closure<into_expected_
}
auto set_stopped() && noexcept { beman::execution::set_stopped(std::move(*this->_receiver)); }
};
using operation_state_concept = beman::execution::operation_state_t;
using operation_state_concept = beman::execution::operation_state_tag;
using inner_state_t = beman::execution::connect_result_t<Sender, receiver>;

Receiver _receiver;
Expand All @@ -102,7 +102,7 @@ struct into_expected_t : beman::execution::sender_adaptor_closure<into_expected_
};
template <beman::execution::sender Sender>
struct sender {
using sender_concept = beman::execution::sender_t;
using sender_concept = beman::execution::sender_tag;

Sender _sender;

Expand Down
4 changes: 2 additions & 2 deletions include/beman/net/detail/io_context.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ class beman::net::io_context {

template <beman::execution::receiver Receiver>
struct run_one_state {
using operation_state_concept = ::beman::execution::operation_state_t;
using operation_state_concept = ::beman::execution::operation_state_tag;

beman::net::io_context* _context;
::std::remove_cvref_t<Receiver> _receiver;
Expand All @@ -114,7 +114,7 @@ class beman::net::io_context {
};

struct run_one_sender {
using sender_concept = ::beman::execution::sender_t;
using sender_concept = ::beman::execution::sender_tag;
using completion_signatures =
::beman::execution::completion_signatures<::beman::execution::set_value_t(std::size_t),
::beman::execution::set_stopped_t()>;
Expand Down
6 changes: 3 additions & 3 deletions include/beman/net/detail/io_context_scheduler.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ class beman::net::detail::io_context_scheduler {
::beman::net::detail::context_base* d_context;

public:
using scheduler_concept = ::beman::net::detail::ex::scheduler_t;
using scheduler_concept = ::beman::net::detail::ex::scheduler_tag;

struct env {
::beman::net::detail::context_base* d_context;
Expand All @@ -35,7 +35,7 @@ class beman::net::detail::io_context_scheduler {
}
};
struct sender {
using sender_concept = ::beman::execution::sender_t;
using sender_concept = ::beman::execution::sender_tag;
using completion_signatures = beman::execution::completion_signatures<beman::execution::set_value_t()>;
template <typename... Env>
static consteval auto get_completion_signatures() -> completion_signatures {
Expand All @@ -44,7 +44,7 @@ class beman::net::detail::io_context_scheduler {

template <typename Receiver>
struct state : ::beman::net::detail::context_base::task {
using operation_state_concept = ::beman::net::detail::ex::operation_state_t;
using operation_state_concept = ::beman::net::detail::ex::operation_state_tag;

::std::remove_cvref_t<Receiver> d_receiver;
::beman::net::detail::context_base* d_context;
Expand Down
6 changes: 3 additions & 3 deletions include/beman/net/detail/repeat_effect_until.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,15 @@ struct repeat_effect_until_t : beman::execution::sender_adaptor_closure<repeat_e
beman::execution::receiver Receiver>
struct state {
struct receiver {
using receiver_concept = beman::execution::receiver_t;
using receiver_concept = beman::execution::receiver_tag;
state* _state;
auto get_env() const noexcept -> beman::execution::env_of_t<Receiver>;
auto set_value() && noexcept -> void;
template <typename Error>
auto set_error(Error&& e) && noexcept -> void;
auto set_stopped() && noexcept -> void;
};
using operation_state_concept = beman::execution::operation_state_t;
using operation_state_concept = beman::execution::operation_state_tag;
using upstream_state = beman::execution::connect_result_t<Upstream, receiver>;
using body_state = beman::execution::connect_result_t<Body, receiver>;
struct connector {
Expand Down Expand Up @@ -90,7 +90,7 @@ struct repeat_effect_until_t : beman::execution::sender_adaptor_closure<repeat_e
};
template <beman::execution::sender Upstream, beman::execution::sender Body, typename Predicate>
struct sender {
using sender_concept = beman::execution::sender_t;
using sender_concept = beman::execution::sender_tag;
using completion_signatures = beman::execution::completion_signatures<beman::execution::set_value_t()>;
template <typename, typename... Env>
static consteval auto get_completion_signatures() {
Expand Down
6 changes: 3 additions & 3 deletions include/beman/net/detail/sender.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ struct beman::net::detail::sender_state_base {

template <::beman::net::detail::ex::receiver Receiver>
struct beman::net::detail::sender_upstream_receiver {
using receiver_concept = ::beman::net::detail::ex::receiver_t;
using receiver_concept = ::beman::net::detail::ex::receiver_tag;
::beman::net::detail::sender_state_base<Receiver>* d_state;

auto set_value() && noexcept -> void { this->d_state->start(); }
Expand All @@ -61,7 +61,7 @@ template <typename Desc,
::beman::net::detail::ex::receiver Receiver,
::beman::net::detail::ex::sender UpstreamSender>
struct beman::net::detail::sender_state : Desc::operation, ::beman::net::detail::sender_state_base<Receiver> {
using operation_state_concept = ::beman::net::detail::ex::operation_state_t;
using operation_state_concept = ::beman::net::detail::ex::operation_state_tag;

struct cancel_callback : ::beman::net::detail::io_base {
sender_state* d_state;
Expand Down Expand Up @@ -133,7 +133,7 @@ struct beman::net::detail::sender_state : Desc::operation, ::beman::net::detail:

template <typename Desc, typename Data, ::beman::net::detail::ex::sender Upstream>
struct beman::net::detail::sender {
using sender_concept = ::beman::net::detail::ex::sender_t;
using sender_concept = ::beman::net::detail::ex::sender_tag;
using completion_signatures =
::beman::net::detail::ex::completion_signatures<typename Data::completion_signature,
::beman::net::detail::ex::set_error_t(::std::error_code),
Expand Down
Loading