ServiceFcnFactory#
-
template<class FactoryFcn>
class ServiceFcnFactory : public sb::di::IServiceFactory# Public Types
-
using ReturnType = std::invoke_result_t<FactoryFcn, IServiceProvider&>#
-
using IsReturnTypeUniquePtr = utils::IsUniquePtr<ReturnType>#
-
using ServiceType = typename IsReturnTypeUniquePtr::Type#
Public Functions
-
inline ServiceFcnFactory(FactoryFcn factoryFunction)#
-
inline virtual TypeId getServiceTypeId() const#
Get the TypeId of the service instances that the factory will create.
-
inline virtual IServiceInstance::Ptr createInstance(IServiceProvider &serviceProvider) const#
Create a service instance object.
-
inline virtual IServiceFactory::Ptr clone()#
Returns copy of self factory.
Note that IServiceFactory implementation must be copyable
-
using ReturnType = std::invoke_result_t<FactoryFcn, IServiceProvider&>#