DependencyInjection.h File Reference
#include "stormancer/BuildConfig.h"
#include "stormancer/Utilities/TypeReflection.h"
#include "stormancer/StormancerTypes.h"
#include "stormancer/Exceptions.h"
#include <memory>
#include <functional>
#include <unordered_map>
#include <vector>
#include <algorithm>
#include <stdexcept>

Go to the source code of this file.

Classes

struct  Stormancer::RegistrationData
 
class  Stormancer::RegistrationHandle< T >
 The RegistrationHandle allows configuring a dependency added via ContainerBuilder::registerDependency(). More...
 
class  Stormancer::DependencyScope
 An object from which dependencies can be retrieved. More...
 
class  Stormancer::ContainerBuilder
 The ContainerBuilder is the primary element of the dependency injection mechanism. Use it to set up the dependencies that you want to make available to consumer components. More...
 
struct  Stormancer::ContainerBuilder::All< T >
 A "type tag" struct to be used as a type argument to registerDependency() when denoting a dependency on multiple instances of T. More...
 

Typedefs

using Stormancer::RegistrationId = uint64
 

Enumerations

enum  DependencyLifetime { InstancePerRequest, InstancePerScope, InstancePerMatchingScope, SingleInstance }
 

Detailed Description

This is the dependency injection mechanism used by Stormancer. For a comprehensive, step-by-step guide, see this page.