|
Sauce-0.10.1
A C++ Dependency Injection Framework
|


Public Types | |
|
typedef ResolvedBinding < Dependency >::BindingPtr | BindingPtr |
Public Types inherited from sauce::internal::Binding< Dependency, Scope > | |
|
typedef Key< Dependency > ::Normalized | Dependency |
| typedef Key< Dependency >::Ptr | IfacePtr |
|
typedef ResolvedBinding < Dependency >::BindingPtr | BindingPtr |
Public Types inherited from sauce::internal::ResolvedBinding< Dependency > | |
| typedef Key< Dependency >::Ptr | IfacePtr |
|
typedef sauce::shared_ptr < ResolvedBinding< Dependency > > | BindingPtr |
Public Member Functions | |
| void | inject (IfacePtr &injected, BindingPtr binding, InjectorPtr injector) const |
| Inject an Iface. | |
| void | dispose (Iface *iface) const |
Public Member Functions inherited from sauce::internal::Binding< Dependency, Scope > | |
| std::string | getName () const |
| The dynamic name of this binding. | |
| void | setName (std::string const name) |
| Set the dynamic name of this binding. | |
Public Member Functions inherited from sauce::internal::ResolvedBinding< Dependency > | |
| NamedTypeId | getKey () const |
| The TypeId of the Dependency template parameter. | |
| virtual void | validateAcyclic (sauce::shared_ptr< Injector >, TypeIds &) const =0 |
| Establish that further dependencies do not introduce cycles with ones already accumulated. | |
| virtual void | get (IfacePtr &, BindingPtr, sauce::shared_ptr< Injector >) const =0 |
| Get an Iface, using the given injector to provide dependencies. | |
Public Member Functions inherited from sauce::internal::OpaqueBinding | |
| virtual bool | isModifier () const |
| Does this binding modify an existing value? | |
| virtual void | eagerlyInject (OpaqueBindingPtr, sauce::shared_ptr< Injector >) const =0 |
| Provide, but do not return the hidden interface. | |
Friends | |
| class | NewBindingFriend |
Additional Inherited Members | |
Protected Member Functions inherited from sauce::internal::InjectorFriend | |
| template<typename Dependency > | |
| void | validateAcyclicHelper (InjectorPtr injector, TypeIds &ids, std::string const name) const |
| template<typename Dependency > | |
| void | injectHelper (typename Key< Dependency >::Ptr &injected, InjectorPtr injector, std::string const name) const |
| template<typename Dependency > | |
| void | cache (InjectorPtr injector, typename Key< Dependency >::Ptr injected, i::TypeId scope) const |
| template<typename Dependency > | |
| bool | probe (InjectorPtr injector, typename Key< Dependency >::Ptr &injected, i::TypeId scope) const |
|
inlinevirtual |
Inject an Iface.
A naked instance pointer is allocated and wrapped in a shared_ptr. It is also given a custom deleter, to dispose of the naked pointer with dispose(Iface *).
Implements sauce::internal::Binding< Dependency, Scope >.

1.8.3