From 6396cce7e094022dc22288d377aa97d73268b657 Mon Sep 17 00:00:00 2001 From: Hayodea Hekol Date: Tue, 19 May 2026 09:57:24 -0400 Subject: [PATCH] Impl NonViralNonPostingInvoker; rename other invokers around posting behaviour --- include/spinscale/co/group.h | 2 +- include/spinscale/co/invokers.h | 68 +++++++++++--- include/spinscale/co/nonPostingInvoker.h | 63 +++++++++++++ include/spinscale/co/nonPostingPromise.h | 108 +++++++++++++++++++++++ include/spinscale/puppetApplication.h | 10 +-- src/puppetApplication.cpp | 10 +-- 6 files changed, 240 insertions(+), 21 deletions(-) create mode 100644 include/spinscale/co/nonPostingInvoker.h create mode 100644 include/spinscale/co/nonPostingPromise.h diff --git a/include/spinscale/co/group.h b/include/spinscale/co/group.h index e0e5b64..ff6f895 100644 --- a/include/spinscale/co/group.h +++ b/include/spinscale/co/group.h @@ -471,7 +471,7 @@ struct Group std::size_t settlementIndex) noexcept { /** EXPLANATION: - * It's very convenient that our design for the NonViralNonSuspendingInvoker + * It's very convenient that our design for the NonViralPostingInvoker * coincidentally allows us to supply a lambda that can be used to test * for the settlement conditions that are being waited on by the Group's * co_awaiter. diff --git a/include/spinscale/co/invokers.h b/include/spinscale/co/invokers.h index a182ad8..dc70399 100644 --- a/include/spinscale/co/invokers.h +++ b/include/spinscale/co/invokers.h @@ -10,6 +10,7 @@ #include #include +#include #include namespace sscl::co { @@ -21,7 +22,7 @@ namespace sscl::co { * from get_return_object(). ~PostingInvoker destroys the callee frame. */ template