src/Config/Binding.php
public function instance(object $object): Binding
    {
        if (!$object instanceof $this->definition->typeName) {
            throw new \InvalidArgumentException(\sprintf('%s is not an instance of %s', \get_class($object), $this->definition->typeName));
        }
        
        $this->definition->instantiator = new Instance($object);
        
        return $this;
    }
public function instance(object $object): Binding
    {
        if (!$object instanceof $this->definition->typeName) {
            throw new \InvalidArgumentException(\sprintf('%s is not an instance of %s', \get_class($object), $this->definition->typeName));
        }
        
        $this->definition->instantiator = new Instance($object);
        
        return $this;
    }
Binds to the given object instance.

Binding to an instance implies that the bound object is shared and decorators have no effect!

@param object $object
@return Binding

@throws \InvalidArgumentException