LeviLamina
Loading...
Searching...
No Matches
SubscriptionBody.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/deps/core/utility/pub_sub/detail/ReturnPolicy.h"
5#include "mc/deps/core/utility/pub_sub/detail/SubscriptionBodyBase.h"
6#include "mc/platform/brstd/move_only_function.h"
7
8
9namespace Bedrock::PubSub::Detail {
10
11template <typename Signature, ReturnPolicyType PolicyType>
13
14template <typename Return, typename... Xs, ReturnPolicyType PolicyType>
15class SubscriptionBody<Return(Xs...), PolicyType> : public SubscriptionBodyBase {
16public:
17 using ReturnPolicy = ReturnPolicy<Return, PolicyType>;
18 using ReturnType = typename ReturnPolicy::ReturnType;
19 using FunctionType = brstd::move_only_function<ReturnType(Xs...)>;
20
21protected:
22 FunctionType function_; // +64
23};
24
25} // namespace Bedrock::PubSub::Detail
Definition SubscriptionBodyBase.h:20
Definition SubscriptionBody.h:12
Definition move_only_function.h:9