/// <summary>
        /// Initializes a new instance of the ContainerCompiler class.
        /// </summary>
        /// <param name="getInstanceMethodImplementor">The class that will implement the GetInstance method.</param>
        /// <param name="containsMethodImplementor">The class that will implement the Contains method.</param>
        /// <param name="createContainerType">The class that will define the container type.</param>
        /// <param name="serviceMapBuilder">The class that will define the service map.</param>
        /// <param name="getAllInstancesMethodImplementor">The class that will implement the GetAllInstances method.</param>
        public ContainerCompiler(IGetInstanceMethodImplementor getInstanceMethodImplementor,
            IContainsMethodImplementor containsMethodImplementor,
            ICreateContainerType createContainerType,
            IServiceMapBuilder serviceMapBuilder,
            IGetAllInstancesMethodImplementor getAllInstancesMethodImplementor)
        {
            _getInstanceMethodImplementor = getInstanceMethodImplementor;
            _containsMethodImplementor = containsMethodImplementor;
            _getAllInstancesMethodImplementor = getAllInstancesMethodImplementor;

            _createContainerType = createContainerType;
            _serviceMapBuilder = serviceMapBuilder;
        }
        /// <summary>
        /// Initializes a new instance of the ContainerCompiler class.
        /// </summary>
        /// <param name="getInstanceMethodImplementor">The class that will implement the GetInstance method.</param>
        /// <param name="containsMethodImplementor">The class that will implement the Contains method.</param>
        /// <param name="createContainerType">The class that will define the container type.</param>
        /// <param name="serviceMapBuilder">The class that will define the service map.</param>
        /// <param name="getAllInstancesMethodImplementor">The class that will implement the GetAllInstances method.</param>
        public ContainerCompiler(IGetInstanceMethodImplementor getInstanceMethodImplementor,
                                 IContainsMethodImplementor containsMethodImplementor,
                                 ICreateContainerType createContainerType,
                                 IServiceMapBuilder serviceMapBuilder,
                                 IGetAllInstancesMethodImplementor getAllInstancesMethodImplementor)
        {
            _getInstanceMethodImplementor     = getInstanceMethodImplementor;
            _containsMethodImplementor        = containsMethodImplementor;
            _getAllInstancesMethodImplementor = getAllInstancesMethodImplementor;

            _createContainerType = createContainerType;
            _serviceMapBuilder   = serviceMapBuilder;
        }