<?php declare(strict_types=1);
/*
* This file is part of PHPUnit.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace PHPUnit\Event\Code;
use PHPUnit\Event\NoPreviousThrowableException;
use PHPUnit\Framework\Exception;
use PHPUnit\Util\Filter;
use PHPUnit\Util\ThrowableToStringMapper;
/**
* @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
*
* @internal This class is not covered by the backward compatibility promise for PHPUnit
*/
final class ThrowableBuilder
{
/**
* @throws Exception
* @throws NoPreviousThrowableException
*/
public static function from(\Throwable $t): Throwable
{
$previous = $t->getPrevious();
if ($previous !== null) {
$previous = self::from($previous);
}
return new Throwable(
$t::class,
$t->getMessage(),
ThrowableToStringMapper::map($t),
Filter::getFilteredStacktrace($t, false),
$previous,
);
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Runtime | Folder | 0755 |
|
|
| Telemetry | Folder | 0755 |
|
|
| Test | Folder | 0755 |
|
|
| TestSuite | Folder | 0755 |
|
|
| ClassMethod.php | File | 1.15 KB | 0644 |
|
| ComparisonFailure.php | File | 1003 B | 0644 |
|
| ComparisonFailureBuilder.php | File | 1.84 KB | 0644 |
|
| Throwable.php | File | 2.33 KB | 0644 |
|
| ThrowableBuilder.php | File | 1.15 KB | 0644 |
|