Functions collection to ease exception handling.
composer require maximaster/exceptioruse Maximaster\Exceptior\Ex;
$noOpeation = function(): void {};
$wouldThrow = fn () => throw new Exception('hello');
Ex::boolize($noOpeation); // === true
Ex::boolize($wouldThrow); // === falseuse Maximaster\Exceptior\Ex;
$giveString = fn () => 'hello'
$wouldThrow = fn () => throw new Exception('no hello');
Ex::suppressInto($giveString, 'fail'); // === 'hello'
Ex::suppressInto($wouldThrow, 'fail'); // === 'fail'use Maximaster\Exceptior\Ex;
$giveString = fn () => 'hello'
$wouldThrow = fn () => throw new Exception('no hello');
$converter = fn (Throwable $thrown) => new RuntimeException($thrown->getMessage());
Ex::convert($giveString, $converter); // === 'hello'
Ex::convert($wouldThrow, $converter); // throws RuntimeExceptionuse Maximaster\Exceptior\Ex;
$giveString = fn () => 'hello'
$wouldThrow = fn () => throw new Exception('no hello');
$normaizeToMessage = fn (Throwable $throwable) => $throwable->getMessage();
Ex::normalize($giveString, $normaizeToMessage); // === 'hello'
Ex::normalize($wouldThrow, $normaizeToMessage); // === 'no hello'$giveString = fn () => 'hello'
$wouldThrow = fn () => throw new Exception('no hello');
Ex::nullize($giveString); // === 'hello'
Ex::nullize($wouldThrow); // === nullFork → Edit → composer check → PR.