protected function getParameterFromContainer(
        IContainer $container,
        ReflectionParameter $parameter
    ) {
        try {
            return $container->get($parameter->getClass()->getName());
        } catch (Exception $ex) {
            $ignoreException = (
                $ex instanceof ValueNotFoundException ||
                $ex instanceof ImplementationNotFoundException
            );

            if ( ! ($ignoreException && $parameter->isDefaultValueAvailable())) {
                throw $ex;
            }
        }
    }
protected function getParameterFromContainer(
        IContainer $container,
        ReflectionParameter $parameter
    ) {
        try {
            return $container->get($parameter->getClass()->getName());
        } catch (Exception $ex) {
            $ignoreException = (
                $ex instanceof ValueNotFoundException ||
                $ex instanceof ImplementationNotFoundException
            );

            if ( ! ($ignoreException && $parameter->isDefaultValueAvailable())) {
                throw $ex;
            }
        }
    }
@param IContainer $container
@param ReflectionParameter $parameter

@return mixed
@throws Exception
@throws ValueNotFoundException