$name */ class ReflectionClass implements Reflector { /** * @var class-string */ public $name; /** * @param T|class-string|trait-string $argument */ public function __construct($argument) {} /** * @return class-string */ public function getName(): string; /** * @param mixed ...$args * * @return T */ public function newInstance(...$args): object {} /** * @param array $args * * @return T */ public function newInstanceArgs(array $args): object {} /** * @return T */ public function newInstanceWithoutConstructor(): object; /** * @return ?array * @psalm-ignore-nullable-return */ public function getTraitNames(): array {} /** * @since 8.0 * @template TClass as object * @param class-string|null $name * @return array> */ public function getAttributes(?string $name = null, int $flags = 0): array {} } class ReflectionFunction implements Reflector { /** * @since 8.0 * @template TClass as object * @param class-string|null $name * @return array> */ public function getAttributes(?string $name = null, int $flags = 0): array {} } class ReflectionProperty implements Reflector { /** * @since 8.0 * @template TClass as object * @param class-string|null $name * @return array> */ public function getAttributes(?string $name = null, int $flags = 0): array {} } class ReflectionMethod implements Reflector { /** * @since 8.0 * @template TClass as object * @param class-string|null $name * @return array> */ public function getAttributes(?string $name = null, int $flags = 0): array {} } class ReflectionClassConstant { /** * @since 8.0 * @template TClass as object * @param class-string|null $name * @return array> */ public function getAttributes(?string $name = null, int $flags = 0): array {} }