Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
InstanceBuilder< Interface > Class Template Reference
Collaboration diagram for InstanceBuilder< Interface >:

Public Types

typedef std::function< Interface *()> ctor_functor

Static Public Member Functions

static std::unique_ptr< Interface > create (const std::string &name)
static void registerImplementation (const std::string &name, const ctor_functor &ctor)

Static Private Member Functions

static InstanceBuilder< Interface > * instance ()

Private Attributes

std::map< std::string, ctor_functor > m_ctor_functors

Static Private Attributes

static std::unique_ptr< InstanceBuilderm_instance

Detailed Description

template<typename Interface>
class InstanceBuilder< Interface >

Definition at line 370 of file ServiceOptions.h.

Member Typedef Documentation

◆ ctor_functor

template<typename Interface>
typedef std::function<Interface*()> InstanceBuilder< Interface >::ctor_functor

Definition at line 386 of file ServiceOptions.h.

Member Function Documentation

◆ create()

template<typename Interface>
std::unique_ptr< Interface > InstanceBuilder< Interface >::create ( const std::string & name)
inlinestatic

Definition at line 375 of file ServiceOptions.h.

◆ instance()

template<typename Interface>
InstanceBuilder< Interface > * InstanceBuilder< Interface >::instance ( )
inlinestaticprivate

Definition at line 398 of file ServiceOptions.h.

◆ registerImplementation()

template<typename Interface>
void InstanceBuilder< Interface >::registerImplementation ( const std::string & name,
const ctor_functor & ctor )
inlinestatic

Definition at line 389 of file ServiceOptions.h.

Member Data Documentation

◆ m_ctor_functors

template<typename Interface>
std::map<std::string, ctor_functor> InstanceBuilder< Interface >::m_ctor_functors
private

Definition at line 407 of file ServiceOptions.h.

◆ m_instance

template<typename Interface>
std::unique_ptr<InstanceBuilder> InstanceBuilder< Interface >::m_instance
staticprivate

Definition at line 396 of file ServiceOptions.h.


The documentation for this class was generated from the following file: