2 #include <geneial/namespaces.h>
4 geneial_private_namespace(geneial)
6 geneial_private_namespace(utility)
9 geneial_export_namespace
17 template<
typename CLIENT>
18 class EnableMakeShared
27 template<
typename ...ARG>
28 std::shared_ptr<CLIENT>
static makeShared(ARG&&...arg)
30 struct LocalEnableMakeShared:
public CLIENT
32 LocalEnableMakeShared(ARG&&...arg) :
33 CLIENT(std::forward<ARG>(arg)...)
38 return std::make_shared<LocalEnableMakeShared>(std::forward<ARG>(arg)...);