private function processDependencies(&$binding): void
    {
        // Let's use the ReflectionClass object previously generated during binding.
        // If it's not instantiable, then we can do nothing... throw exception.
        if (! $binding['reflector']->isInstantiable()) {
            throw new ContainerException($binding['concrete'].' can not be instantiated.');
        }

        // Get the class constructor and see what we have. If there is no constructor,
        // then return an empty array of dependencies.
        if (! $binding['reflector']->getConstructor()) {
            $binding['dependencies'] = [];

            return;
        }

        // Otherwise get the constructor parameters and resolve them.
        $binding['dependencies'] = $this->resolveParameters($binding['reflector']->getConstructor()->getParameters());
    }