public function __construct($type_, $provider_, $isPrimitive_)
 {
     parent::__construct($type_, $provider_::getType(), $isPrimitive_);
     if (is_string($provider_)) {
         $this->m_providerType = $provider_;
     } else {
         $this->m_provider = $provider_;
         $this->m_providerType = get_class($provider_);
     }
 }
 /**
  * Resolves instance for given binding.
  *
  * @param \Components\Binding_Type_Abstract $binding_
  *
  * @return mixed
  */
 private function createInstanceImpl(Binding_Type_Abstract $binding_)
 {
     $instance = $binding_->getInstance();
     if ($binding_->isPrimitive()) {
         return $instance;
     }
     $instanceId = \math\hasho($instance);
     if (isset($this->m_injectedInstances[$instanceId])) {
         return $this->m_injectedInstances[$instanceId];
     }
     $this->m_injectedInstances[$instanceId] = $instance;
     $this->injectMembersImpl($instance);
     return $instance;
 }
 public function __construct($type_, $instance_, $isPrimitive_)
 {
     $this->m_instance = $instance_;
     parent::__construct($type_, $isPrimitive_ ? $type_ : get_class($instance_), $isPrimitive_);
 }
 public function __construct($type_, $targetType_)
 {
     parent::__construct($type_, $targetType_, false);
 }