protected function rethrowExceptions(callable $callable) {
        try {
            return $callable();
        } catch (ImplementationNotFoundException $ex) {
            throw new ImplementationNotFoundException($ex->getMessage());
        } catch (TypeMismatchException $ex) {
            throw new TypeMismatchException($ex->getMessage());
        } catch (UnresolveableArgumentException $ex) {
            throw new UnresolveableArgumentException($ex->getMessage());
        } catch (ValueNotFoundException $ex) {
            throw new ValueNotFoundException($ex->getMessage());
        } catch (InvalidCallableFormatException $ex) {
            throw new InvalidCallableFormatException($ex->getMessage());
        } catch (MissingDefinitionIdentifierException $ex) {
            throw new MissingDefinitionIdentifierException($ex->getMessage());
        } catch (MissingDefinitionValueException $ex) {
            throw new MissingDefinitionValueException($ex->getMessage());
        } catch (ClassNotFoundException $ex) {
            throw new ClassNotFoundException($ex->getMessage());
        }
    }
protected function rethrowExceptions(callable $callable) {
        try {
            return $callable();
        } catch (ImplementationNotFoundException $ex) {
            throw new ImplementationNotFoundException($ex->getMessage());
        } catch (TypeMismatchException $ex) {
            throw new TypeMismatchException($ex->getMessage());
        } catch (UnresolveableArgumentException $ex) {
            throw new UnresolveableArgumentException($ex->getMessage());
        } catch (ValueNotFoundException $ex) {
            throw new ValueNotFoundException($ex->getMessage());
        } catch (InvalidCallableFormatException $ex) {
            throw new InvalidCallableFormatException($ex->getMessage());
        } catch (MissingDefinitionIdentifierException $ex) {
            throw new MissingDefinitionIdentifierException($ex->getMessage());
        } catch (MissingDefinitionValueException $ex) {
            throw new MissingDefinitionValueException($ex->getMessage());
        } catch (ClassNotFoundException $ex) {
            throw new ClassNotFoundException($ex->getMessage());
        }
    }
protected function rethrowExceptions ( callable $ callable ) { try { return $ callable ( ) ; } catch ( ImplementationNotFoundException $ ex ) { throw new ImplementationNotFoundException ( $ ex -> getMessage ( ) ) ; } catch ( TypeMismatchException $ ex ) { throw new TypeMismatchException ( $ ex -> getMessage ( ) ) ; } catch ( UnresolveableArgumentException $ ex ) { throw new UnresolveableArgumentException ( $ ex -> getMessage ( ) ) ; } catch ( ValueNotFoundException $ ex ) { throw new ValueNotFoundException ( $ ex -> getMessage ( ) ) ; } catch ( InvalidCallableFormatException $ ex ) { throw new InvalidCallableFormatException ( $ ex -> getMessage ( ) ) ; } catch ( MissingDefinitionIdentifierException $ ex ) { throw new MissingDefinitionIdentifierException ( $ ex -> getMessage ( ) ) ; } catch ( MissingDefinitionValueException $ ex ) { throw new MissingDefinitionValueException ( $ ex -> getMessage ( ) ) ; } catch ( ClassNotFoundException $ ex ) { throw new ClassNotFoundException ( $ ex -> getMessage ( ) ) ; } }
Rethrow controlled exceptions, those that get thrown by the container
or the resolver, to shorten the call stack and make it more readable.

@param callable $callable

@return mixed
@throws ClassNotFoundException
@throws ImplementationNotFoundException
@throws InvalidCallableFormatException
@throws MissingDefinitionIdentifierException
@throws MissingDefinitionValueException
@throws TypeMismatchException
@throws UnresolveableArgumentException
@throws ValueNotFoundException
Rethrow controlled exceptions those that get thrown by the container or the resolver to shorten the call stack and make it more readable .