From abf415825698880551798e2cd1bf4b8605b96f3c Mon Sep 17 00:00:00 2001 From: philipp lang <philipp@aweos.de> Date: Thu, 3 Apr 2025 00:10:40 +0200 Subject: [PATCH] Fix phpstan --- phpstan.neon | 2 ++ tests/stub/phpstan/CastsAttributes.stub | 35 +++++++++++++++++++++++++ tests/stub/phpstan/File.stub | 11 ++++++++ 3 files changed, 48 insertions(+) create mode 100644 tests/stub/phpstan/CastsAttributes.stub create mode 100644 tests/stub/phpstan/File.stub diff --git a/phpstan.neon b/phpstan.neon index f7b730e2..3d85785d 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -8,6 +8,8 @@ parameters: - tests/stub/phpstan/TestResponse.stub - tests/stub/phpstan/Settings.stub - tests/stub/phpstan/DataEloquentCast.stub + - tests/stub/phpstan/File.stub + - tests/stub/phpstan/CastsAttributes.stub paths: - app diff --git a/tests/stub/phpstan/CastsAttributes.stub b/tests/stub/phpstan/CastsAttributes.stub new file mode 100644 index 00000000..d408ece5 --- /dev/null +++ b/tests/stub/phpstan/CastsAttributes.stub @@ -0,0 +1,35 @@ +<?php + +namespace Illuminate\Contracts\Database\Eloquent; + +use Illuminate\Database\Eloquent\Model; + +/** + * @template TGet + * @template TSet + * @copy + */ +interface CastsAttributes +{ + /** + * Transform the attribute from the underlying model values. + * + * @param \Illuminate\Database\Eloquent\Model $model + * @param string $key + * @param mixed $value + * @param array<string, mixed> $attributes + * @return TGet|null + */ + public function get(Model $model, string $key, mixed $value, array $attributes); + + /** + * Transform the attribute to its underlying model values. + * + * @param \Illuminate\Database\Eloquent\Model $model + * @param string $key + * @param TSet|null $value + * @param array<string, mixed> $attributes + * @return mixed + */ + public function set(Model $model, string $key, mixed $value, array $attributes); +} diff --git a/tests/stub/phpstan/File.stub b/tests/stub/phpstan/File.stub new file mode 100644 index 00000000..e0cb5730 --- /dev/null +++ b/tests/stub/phpstan/File.stub @@ -0,0 +1,11 @@ +<?php + +namespace Symfony\Component\HttpFoundation\File; + +/** + * @copy + */ +class File +{ + +}