Move cps files into cps/

This commit is contained in:
2026-05-17 17:25:29 -04:00
parent 1d1cb099db
commit 83ad680c68
11 changed files with 0 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
#ifndef SPINSCALE_CALLBACK_H
#define SPINSCALE_CALLBACK_H
#include <memory>
namespace sscl {
// Forward declaration
class AsynchronousContinuationChainLink;
/**
* @brief Callback class that wraps a function and its caller continuation
*
* This class provides a way to pass both a callback function and the
* caller's continuation in a single object, enabling deadlock detection
* by walking the chain of continuations.
*
* Usage: Callback<CbFnT>{context, std::bind(...)}
*/
template<typename CbFnT>
class Callback
{
public:
// Aggregate initialization allows: Callback<CbFnT>{context, std::bind(...)}
std::shared_ptr<AsynchronousContinuationChainLink> callerContinuation;
CbFnT callbackFn;
};
} // namespace sscl
#endif // SPINSCALE_CALLBACK_H