Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::DependencyInjection::Injector

Injecteur. Plus de détails...

+ Graphe de collaboration de Arcane::DependencyInjection::Injector:

Classes

class  FactoryVisitorFunctor
 
class  IFactoryVisitorFunctor
 Interface d'un fonctor pour appliqué à chaque fabrique. Plus de détails...
 
class  IInstanceVisitorFunctor
 Interface d'un fonctor pour appliqué à chaque fabrique. Plus de détails...
 
class  Impl
 
class  InjectorHelper
 
class  InjectorHelper< Ref< PointerType > >
 Spécialisation pour les 'Ref'. Plus de détails...
 
class  InstanceVisitorFunctor
 

Fonctions membres publiques

 Injector (const Injector &)=delete
 
Injectoroperator= (const Injector &)=delete
 
template<typename Type >
void bind (Type iref, const String &name=String())
 
template<typename Type >
Type get (const String &name=String())
 
template<typename InterfaceType >
Ref< InterfaceType > createInstance (const String &service_name=String())
 
String printFactories () const
 
void fillWithGlobalFactories ()
 

Fonctions membres privées

void _add (IInjectedInstance *instance)
 
void _iterateInstances (const std::type_info &t_info, const String &instance_name, IInstanceVisitorFunctor *lambda)
 
Integer _nbValue () const
 
IInjectedInstance_value (Integer i) const
 
void _iterateFactories (const String &factory_name, IFactoryVisitorFunctor *functor) const
 Itère sur les fabriques et applique le fonctor functor.
 
Integer _nbFactory () const
 
impl::IInstanceFactory_factory (Integer i) const
 
template<typename InterfaceType >
Ref< InterfaceType > _getRef (const String &instance_name)
 
template<typename Type >
Type _getValue (const String &instance_name)
 
void _doError (const TraceInfo &ti, const String &message)
 

Attributs privés

Implm_p = nullptr
 

Description détaillée

Injecteur.

Définition à la ligne 524 du fichier DependencyInjection.h.

Documentation des constructeurs et destructeur

◆ Injector()

Arcane::DependencyInjection::Injector::Injector ( )

Définition à la ligne 72 du fichier DependencyInjection.cc.

◆ ~Injector()

Arcane::DependencyInjection::Injector::~Injector ( )

Définition à la ligne 81 du fichier DependencyInjection.cc.

Documentation des fonctions membres

◆ _add()

void Arcane::DependencyInjection::Injector::_add ( IInjectedInstance instance)
private

Définition à la ligne 90 du fichier DependencyInjection.cc.

◆ _doError()

void Arcane::DependencyInjection::Injector::_doError ( const TraceInfo ti,
const String message 
)
private

Définition à la ligne 329 du fichier DependencyInjection.cc.

◆ _factory()

impl::IInstanceFactory * Arcane::DependencyInjection::Injector::_factory ( Integer  i) const
private

Définition à la ligne 126 du fichier DependencyInjection.cc.

◆ _getRef()

template<typename InterfaceType >
Ref< InterfaceType > Arcane::DependencyInjection::Injector::_getRef ( const String instance_name)
inlineprivate

Définition à la ligne 683 du fichier DependencyInjection.h.

◆ _getValue()

template<typename Type >
Type Arcane::DependencyInjection::Injector::_getValue ( const String instance_name)
inlineprivate

Définition à la ligne 700 du fichier DependencyInjection.h.

◆ _iterateFactories()

void Arcane::DependencyInjection::Injector::_iterateFactories ( const String factory_name,
IFactoryVisitorFunctor functor 
) const
private

Itère sur les fabriques et applique le fonctor functor.

On s'arrête dès qu'un appel à functor retourne true.

Si factory_name n'est pas nul, seules les fabriques pour lequelles FactoryInfo::hasName(factory_name) est vrai sont utilisées.

Définition à la ligne 282 du fichier DependencyInjection.cc.

◆ _iterateInstances()

void Arcane::DependencyInjection::Injector::_iterateInstances ( const std::type_info &  t_info,
const String instance_name,
IInstanceVisitorFunctor lambda 
)
private

Définition à la ligne 309 du fichier DependencyInjection.cc.

◆ _nbFactory()

Integer Arcane::DependencyInjection::Injector::_nbFactory ( ) const
private

Définition à la ligne 117 du fichier DependencyInjection.cc.

◆ _nbValue()

Integer Arcane::DependencyInjection::Injector::_nbValue ( ) const
private

Définition à la ligne 99 du fichier DependencyInjection.cc.

◆ _value()

IInjectedInstance * Arcane::DependencyInjection::Injector::_value ( Integer  i) const
private

Définition à la ligne 108 du fichier DependencyInjection.cc.

◆ bind()

template<typename Type >
void Arcane::DependencyInjection::Injector::bind ( Type  iref,
const String name = String() 
)
inline

Définition à la ligne 617 du fichier DependencyInjection.h.

◆ createInstance()

template<typename InterfaceType >
Ref< InterfaceType > Arcane::DependencyInjection::Injector::createInstance ( const String service_name = String())
inline

Définition à la ligne 629 du fichier DependencyInjection.h.

◆ fillWithGlobalFactories()

void Arcane::DependencyInjection::Injector::fillWithGlobalFactories ( )

Définition à la ligne 235 du fichier DependencyInjection.cc.

◆ get()

template<typename Type >
Type Arcane::DependencyInjection::Injector::get ( const String name = String())
inline

Définition à la ligne 623 du fichier DependencyInjection.h.

◆ printFactories()

String Arcane::DependencyInjection::Injector::printFactories ( ) const

Définition à la ligne 258 du fichier DependencyInjection.cc.

Documentation des données membres

◆ m_p

Impl* Arcane::DependencyInjection::Injector::m_p = nullptr
private

Définition à la ligne 658 du fichier DependencyInjection.h.


La documentation de cette classe a été générée à partir des fichiers suivants :