1: <?php
2:
3: declare(strict_types=1);
4:
5: namespace PHPStan\BetterReflection\Reflection\Exception;
6:
7: use PHPStan\BetterReflection\Reflection\ReflectionClass;
8: use UnexpectedValueException;
9:
10: use function sprintf;
11:
12: class NotAnInterfaceReflection extends UnexpectedValueException
13: {
14: public static function fromReflectionClass(ReflectionClass $class): self
15: {
16: $type = 'class';
17:
18: if ($class->isTrait()) {
19: $type = 'trait';
20: }
21:
22: return new self(sprintf('Provided node "%s" is not interface, but "%s"', $class->getName(), $type));
23: }
24: }
25: