Compare commits

...
Author SHA1 Message Date
Barry vd. Heuvel eb6c1898ae Bump dev alias to 3.2 2024-10-17 18:40:48 +02:00
Serhii PetrovandBarry vd. Heuvel 2acec73fdd Test against php 8.4 (#1592)
* Test against php 8.4

* Test against php 8.4

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-10-17 18:39:39 +02:00
KentarouTakeda 085ca3e225 Compatible with Generics Eloquent Builder in Laravel 11.15 (#1591)
* feat: support generics eloquent builder

* fix: required laravel version

* fix: ci execution is only for Laravel-11

* docs: add CHANGELOG

* docs: update supported Laravel versions and adjust output examples
2024-10-17 18:37:19 +02:00
KentarouTakeda ec61b82178 Fix upstream dependent test failure (#1595) 2024-10-17 18:35:28 +02:00
KentarouTakeda d3965aaab5 fix: Model's --write duplicates array properties (#1594)
* Use the bug-fixed version of the upstream library

* Updated the test for fixed features to correctly expect
2024-10-17 18:34:58 +02:00
erikn69 4f588b9782 Fix badges (#1576) 2024-09-20 14:51:24 +02:00
khaled sadek 643329d23d Fix type of hased model property (#1579)
* set hashed properity as string

* add to changelog

* add test
2024-08-07 09:29:14 +02:00
Barry vd. Heuvel 591e7d665f Update CHANGELOG.md (#1570) 2024-07-12 16:20:51 +02:00
Barry vd. Heuvel 2dba19133c Fix style again (#1569) 2024-07-12 16:16:37 +02:00
schrosis 001091e605 fix: unknown format PHPDoc (#1538) 2024-07-12 16:09:08 +02:00
Barry vd. Heuvel ccac27c8cf Bump dev alias to 3.1 2024-07-12 16:08:33 +02:00
f5759e2001 Add static to isBuiltin() check in ide-helper:models (#1541)
* Add `\\static` as check

For some reason, the `static` keyword as a return type, does not return `isBuiltin()` === true, so a `\\` is added. We need to manually add it to the built in check.

* Update ModelsCommand.php

* Add tests

* Add CHANGELOG.md entry

---------

Co-authored-by: Markus Podar <[email protected]>
Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-07-12 16:08:08 +02:00
michalandBarry vd. Heuvel f7a3dc8ff2 Add support in morphTo relationship for null values (1547) (#1549)
Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-07-12 16:06:56 +02:00
Braunson YagerandBarry vd. Heuvel 672acce5ae feat: add support for AsEnumCollection casts (#1557)
* Adding support for casting to AsEnumCollection

* Adding missing string to advanced_casts table for enum_collection

* Added to snapshots and ArrayCastsWithComment

* Update CHANGELOG.md

* Reverted automated whitespace, strict changes

* Updated test snapshots, tests passing

* Whitespace revert

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-07-12 16:03:57 +02:00
Benedikt Franke 67c00c0978 Improve config file (#1564)
* Improve config file

- Terminate all descriptions with a dot .
- Update outdated descriptions
- Add missing examples

* Fix capitalizations
2024-07-12 15:58:21 +02:00
Barry vd. Heuvel a1573919c1 Update CHANGELOG.md 2024-07-12 15:56:03 +02:00
Markus Podar 0cf178aca9 composer fix-style (#1558) 2024-07-12 15:53:54 +02:00
c6509b658f Improved attribute handling with types and Attribute support (#1567)
* Add `AllowDynamicProperties` Attribute to cooperate with php8.2 deprecation

* lint snapshot

* Fix collection attribute typing

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update composer.json

* Fix collectino with template types WIP

* Add `AllowDynamicProperties` Attribute to cooperate with php8.2 deprecation

* Fix collection attribute typing

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update composer.json

* composer fix-style

* Fix tests

* Fix tests

* composer fix-style

* Fix collectino with complex template types{

* Delete phpactor

* Install from scrumble repo

* Implemented correct attribute handling

* composer fix-style

* Revert "Install from scrumble repo"

This reverts commit 3f1057adb6.

* Re-add barryvdh links

* Revert "Update composer.json"

This reverts commit 98252fe740.

* Fix pivot test

* Correct CHANGELOG.md with attribute merge request

* More clear PhpDocTypeParser filename and clarified directory according to PSR12

---------

Co-authored-by: GeoSot <[email protected]>
Co-authored-by: laravel-ide-helper <[email protected]>
Co-authored-by: Luukdewaaier <[email protected]>
Co-authored-by: Luuk de Weijer <[email protected]>
2024-07-12 15:53:04 +02:00
sforward 6338abb2d7 Fix return value of scopes from parent class (#1366) 2024-04-01 08:43:59 +02:00
dev2a ac7e186270 Add pivot class property (#1518)
* Add pivot class property

* Add test for pivot class properties

* Fix failed test for pivot class properties

* Update CHANGELOG.md

* Fix failed test
2024-03-11 14:37:15 +01:00
Barry vd. Heuvel bc1d67f01c Prepare 3.0 release (#1530)
* Prepare 3.0 release

* Update CHANGELOG.md

* Update CHANGELOG.md
2024-03-01 13:53:18 +01:00
Markus Podar 8eab699835 phpunit --migrate-configuration (#1526) 2024-02-19 20:52:29 +01:00
Markus PodarandBarry vd. Heuvel 49ac75d805 Remove --smart-reset completely (#1525)
* Remove `--smart-reset` completely

See https://github.com/barryvdh/laravel-ide-helper/pull/1523#issuecomment-1952313183

* Update CHANGELOG.md

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-02-19 14:03:16 +01:00
Barry vd. Heuvel 02af2a278a Merge reset/smart reset, don't set class (#1523)
* Merge reset/smart reset, don't set class

* Add changelog
2024-02-19 12:59:22 +01:00
Barry vd. Heuvel d7ed749f3e Use int/bool instead of longer variant (#1524)
* Use int/bool instead of longer variant

* Add changelog

* Update snapshots
2024-02-19 12:39:07 +01:00
Markus Podar 9af62e243d Bump minimum PHP version to 8.1 & misc maintenance (#1521)
* Bump minimum PHP version to 8.1

Laravel 10 doesn't support 8.0 anyway

* Remove phpunit 9

* gha: remove unused matrix dimension

* gha: bump runner os

* tests: remove outdated version checks
2024-02-17 22:08:15 +01:00
05259b695d Add support for Laravel 11 (#1520)
* update dependencies

* Implement new methods for `Authenticatable` contract

* Added Laravel 11 to CI test target

* normalize composer.json

* Remove obsolete migration method (column type) from test

* Update snapshots

* Add changelog entry

* Update readme

---------

Co-authored-by: 武田 憲太郎 <[email protected]>
Co-authored-by: barryvdh <[email protected]>
2024-02-17 11:32:56 +01:00
Barry vd. Heuvel 8bfe918f65 Update CHANGELOG.md 2024-02-17 11:27:21 +01:00
6579c0332b Remove doctrine (#1512)
* Remove doctrine

* Fix tests

* normalize composer.json

* Add back platform

* Bump integration versions

* composer fix-style

* Fix stability

* Bump minimum to 10.36

* Bump minimum to 10.38

* More types

* Fast fail off

* Bump docblock

* composer fix-style

* add bpchar

* Use match for type detection

Co-authored-by: Hafez Divandari <[email protected]>

* Use driverName

Co-authored-by: Hafez Divandari <[email protected]>

* fix match

* TWeak types

* Update snapshots

* Remove testbench 7

* composer fix-style

* Update src/Console/ModelsCommand.php

Co-authored-by: Hafez Divandari <[email protected]>

* Update src/Console/ModelsCommand.php

Co-authored-by: Hafez Divandari <[email protected]>

* Tweak bool

* Update src/Console/ModelsCommand.php

Co-authored-by: Hafez Divandari <[email protected]>

* composer fix-style

* Remove custom types, default to string

---------

Co-authored-by: barryvdh <[email protected]>
Co-authored-by: laravel-ide-helper <[email protected]>
Co-authored-by: Hafez Divandari <[email protected]>
2024-02-17 11:12:12 +01:00
Barry vd. Heuvel ed39977a30 Switch to 3.0 tag (#1519) 2024-02-17 11:11:50 +01:00
Markus Podar bcc233280b [TEST] Show that custom phpdoc tags without space afterwards are unexpectedly changed (#981)
* tests: show that custom phpdoc tags without space afterwards are unexpectedly changed

This adds a test for the (current bug) behaviour of https://github.com/barryvdh/laravel-ide-helper/issues/666

If this ever gets fixed, this fails and needs to be adapted,
ensuring it won't break again.

* test: adapt now that #666 has been fixed
2024-02-16 21:38:43 +01:00
Barry vd. Heuvel 77831852bb Fix final class keyword (#1517)
* Fix final class keyword

* Add changelog
2024-02-15 15:23:20 +01:00
Markus Podar b47a118300 Adjust gitattribute (#1515)
and make up for the missing php-cs-fixer changes

The rest of the changes is just:
- sorted alphabetically
- align the `export-ignore` column
2024-02-14 14:49:24 +01:00
Barry vd. HeuvelandMarkus Podar dca3ebe81e Prepare 2.15 release (#1514)
* Prepare 2.15 release

* Prepare 2.15 release

* Add missing CHANGELOG.md entries

---------

Co-authored-by: Markus Podar <[email protected]>
2024-02-14 12:19:26 +01:00
Barry vd. Heuvel c119e89cf0 CS 2024-02-08 11:11:51 +01:00
GeoSot bc158a1b86 Add AllowDynamicProperties Attribute to cooperate with php8.2 deprecation (#1428)
* Add `AllowDynamicProperties` Attribute to cooperate with php8.2 deprecation

* lint snapshot
2024-02-08 11:09:30 +01:00
341c0ab89f feat: add support for AsCollection and AsArrayObject casts (#1393)
* feat: add support for AsCollection and AsArrayObject casts

* update changelog

* improve tests

* remove change

* composer fix-style

* snapshot

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: laravel-ide-helper <[email protected]>
2024-02-08 10:59:02 +01:00
Menthol cee441c87c Fix #1300 relation_return_type must take precedence if it is defined (#1394) 2024-02-08 09:48:26 +01:00
Barry vd. Heuvel 9343d3a1cc CS 2024-02-08 09:41:24 +01:00
f12d933ab1 Add support for non type-hinted attribute accessors with no backed property (#1411)
* Read Attribute type from parameter

* Update CHANGELOG.md

* Update ModelsCommand.php

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-02-08 09:39:10 +01:00
Norman Huth 4751420c9e Accept scope & scopes as relation (#1452) 2024-02-08 09:20:47 +01:00
Caleb White 6115100a0f Add support for composite keys (#1479)
* Add support for composite keys

* chore: add composite foreign key test
2024-02-08 07:42:27 +01:00
Sven 5c886fb653 Support the BINARY(...) database field type (#1434)
In singlestore we define some strings as
$table->char($columnName, 40)->charset('binary')->collation('binary');

In singelstore, this becomes 'BINARY(40)' instead of 'CHAR(40) CHARACTER SET 'binary' COLLATE 'binary'

This change would allow the generated proeperties to be 'string' instead of 'mixed', as using a string is correct in this case.
2024-02-07 22:01:48 +01:00
Barry vd. Heuvel 7d69dc6ea0 CS 2024-02-07 21:58:39 +01:00
Ben Poulson 62fc436c4c Reintroduce support for multi-db setups (#1426)
This snipet was lost in the 2.12.x => 2.13.x change. Needs to be reintroduced to allow those who use fully qualified db+table names. (Eg, `database.table`)
2024-02-07 21:55:16 +01:00
409bbf665b Fix unsetMethod in ModelsCommand (#1453)
* Fix unsetMethod in ModelsCommand

* composer fix-style

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: laravel-ide-helper <[email protected]>
2024-02-07 21:48:09 +01:00
Barry vd. Heuvel 2535f8e6ab Fix tests and CS 2024-02-07 21:44:48 +01:00
James Bhatta 16548fc878 Update README.md (#1451)
Fix intra page link for PHPDocs for models
2024-02-07 21:40:24 +01:00
Barry vd. Heuvel 872b470d9b Update CHANGELOG.md 2024-02-07 21:37:51 +01:00
Filip Iulian Pacurar 04c1a8d444 Support generating helper files for real-time facades (#1455)
* Support generating helper files for real-time facades

Add changelog entry for real-time facades support

Mention real-time facades support in readme

Fix code style

Import

* Remove useless assertions

We cannot 100% control the output file has only the real-time facades, anything else can be in the final output
2024-02-07 21:35:02 +01:00
snmatsui c290af858d reset foreignKeyConstraintsColumns on model loop start (#1461) 2024-02-07 21:31:12 +01:00
f64ff9c0b1 Add support for enum default arguments using enum cases (#1464)
* add case when default value is of type enum

* Update CHANGELOG.md

* add tests for enum arguments default values

* ignore psalm issue (built-in `\UnitEnum` class does not exists in PHP7)

* Update run-static-analysis.yml to use PHP8.1

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-02-07 21:27:30 +01:00
Allan LaalandBarry vd. Heuvel f3ad134242 FIX vulnerability CVE-2021-43608 (#1392)
Doctrine DBAL 3.x before 3.1.4 allows SQL Injection: https://www.cve.org/CVERecord?id=CVE-2021-43608

Co-authored-by: Barry vd. Heuvel <[email protected]>
2024-02-07 21:24:42 +01:00
PapaBearandTimo Frenzel 9d14b019f6 skip swoole, otherwise fatal error (#1477)
Co-authored-by: Timo Frenzel <[email protected]>
2024-02-07 21:19:43 +01:00
netpok f4656256fc Fix non-facade classes will result in no autocomplete (#841)
* Filter out non-facade base classes

* Remove Model as it is already skipped because it's not a facade
2024-02-07 21:06:31 +01:00
Jackey Cheung cc9ed4423b disable inspections of helper files (#1486)
* disables all jetbrains inspections

* disables all jetbrains' & phpcs' inspections
2024-02-07 19:30:35 +01:00
Markus Podar 512612f22f Remove outdated dev references to older versions (#1508) 2024-02-07 19:29:10 +01:00
Toby TwiggerandToby Twigger 115068e57b Clarify use of --reset and --smart-reset flags in documentation (#1494)
* Update README.md

Clarified model behaviour when using the --reset option

* Add --smart-reset to the documentation

---------

Co-authored-by: Toby Twigger <[email protected]>
2024-02-07 14:36:45 +01:00
Markus Podar a8b34ad228 Removed support for Laravel 8 and therefore for PHP < 8.0 (#1504)
* Removed support for Laravel 8 and therefore for PHP < 8.0

* Update php-cs-fixer to v3

* composer fix-style
2024-02-05 13:25:08 +01:00
Barry vd. Heuvel 485c756f6c Prepare 2.14.0 release 2024-02-05 09:16:36 +01:00
Markus Podar cf4687f98c Prepare 2.14.0 release (#1503) 2024-02-05 09:13:57 +01:00
Markus Podar e65d30b27a Remove doctrine/dbal:^4 support (#1507)
* Remove doctrine/dbal:^4 support

Tests fail with:
`PHP Fatal error:  Declaration of Illuminate\Database\PDO\Concerns\ConnectsToDatabase::connect(array $params, $username = null, $password = null, array $driverOptions = []) must be compatible with Doctrine\DBAL\Driver::connect(array $params): Doctrine\DBAL\Driver\Connection in /home/runner/work/laravel-ide-helper/laravel-ide-helper/vendor/laravel/framework/src/Illuminate/Database/PDO/Concerns/ConnectsToDatabase.php on line 22`

* gha: install with downgrading all dependencies

* Add note to readme
2024-02-05 06:54:43 +01:00
Markus Podar 416e0ab243 Merge pull request #1506 from olexoliinyk0/test/case-of-1505
test: case for the issue #1505;
2024-02-03 21:02:28 +01:00
Markus Podar 9374952402 Adapt snapshot testcase 2024-02-03 20:56:57 +01:00
Oleksandr Oliinyk 850fc5fe7f test: case for the issue #1505;
duplication of properties that have generic types specified and descriptions;
2024-02-02 18:37:44 +02:00
Markus Podar 726e595578 Add support for nikic/php-parser:^5 and (hopefully) doctrine/dbal:^4 (#1502)
* Add support for nikic/php-parser:^5

- `createForHostVersion` has been added to php-parse 4.18 so code can
  run with both versions [1]
- therefore also bumped the minimum required version to it

Note:
The dev dependency vimeo/psalm is **not** compatible with
php-parser:^5 currently. This does not impact usages of this library,
but sometimes cause friction when working on this library.
For our CI this isn't a problem, because we already remove that
dependency before running the test suite.

[1] https://github.com/nikic/PHP-Parser/blob/master/UPGRADE-5.0.md#changes-to-the-parser-factory

* gha: prevent cancelling of all jobs if one fails

* Update CHANGELOG.md

* gha: remove unsupported Laravel / PHP combinations

According to https://laravel.com/docs/10.x/releases

* Add dbal:^4 too
2024-01-28 19:33:31 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 6336db0548 Bump the deps group with 1 update (#1478)
Bumps the deps group with 1 update: [stefanzweifel/git-auto-commit-action](https://github.com/stefanzweifel/git-auto-commit-action).

- [Release notes](https://github.com/stefanzweifel/git-auto-commit-action/releases)
- [Changelog](https://github.com/stefanzweifel/git-auto-commit-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: stefanzweifel/git-auto-commit-action
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 10:36:20 +01:00
Markus Podar 21352a1e48 Merge pull request #1473 from sergiy-petrov/php8.3 2023-10-05 15:58:39 +02:00
Serhii Petrov 390874207f Test against php 8.2 and 8.3
Integration tests against 8.3
Unit tests against 8.2 and 8.3
2023-10-05 16:10:38 +03:00
Markus Podar 3cdd3af631 chore: add dependabot for github actions (#1470) 2023-09-29 09:26:16 +02:00
erikn69 c751d3e176 ci: Use GitHub Actions V4 (#1469) 2023-09-29 09:25:55 +02:00
Markus Podar 1a3affd4f8 Catch error and exception (#1431) (#1465)
Credit goes to @dongm2ez
2023-09-06 12:35:33 +02:00
Markus Podar 0801d002e4 Fix tests for edc422cd2e (#1457)
I just ran `composer test-regenerate`
2023-07-31 13:26:41 +02:00
Gerardo Ibarra edc422cd2e add annotation ignore for php code sniffer (#1456) 2023-07-31 11:08:02 +02:00
Markus PodarandBarry vd. Heuvel 4dc20b028a Remove offical support for Lumen (#1425)
I'm proposing to drop official suport for Lumen for the following reasons:
- Lumen itself is dead, per [1]
  > **Note:** In the years since releasing Lumen, PHP has made a variety of wonderful performance improvements. For this reason, along with the availability of [Laravel Octane](https://laravel.com/docs/octane), we no longer recommend that you begin new projects with Lumen. Instead, we recommend always beginning new projects with [Laravel](https://laravel.com).

  Laravel Octact is just Laravel and no one using ide-helper with it
  needs anything special.
- For now, the change is mostly on the logistics side (readme, run tests,
  issues). In the past we had some special code but over time this was
  already removed.
  For now people still can use it and nothing will break out of the blue,
  but eventually it might

There are a only a few Lumen related issues open currently which would
be closed by this (#1105, #1069, #438).

[1] https://github.com/laravel/lumen/commit/69b26578d2f15595ea901278434b74df459c4329

Co-authored-by: Barry vd. Heuvel <[email protected]>
2023-02-20 13:23:52 +01:00
39885645b9 Add support for protected Attribute accessors (#1339)
* Add support for protected Attribute accessors

* Fix formatting

* Prevent accessors methods marked as private from being added

* Exclude specific accessors based on trait instead of class

* Add changelog entry

* Add clarifying comment

* Fix accessor attributes not working on PHP < 8.1

* Reintroduce method variable to reduce PR clutter

* Change variable name to reduce PR clutter

* Update CHANGELOG.md

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: Barry vd. Heuvel <[email protected]>
2023-02-20 09:44:01 +01:00
Barry vd. Heuvel aa1aa66ee6 Update CHANGELOG.md 2023-02-20 09:40:08 +01:00
b70a9f5048 add immutable_date/time:* casts (#1380)
* add immutable_date/time:* casts

* fix style

* Update CHANGELOG.md

---------

Co-authored-by: Barry vd. Heuvel <[email protected]>
Co-authored-by: Barry vd. Heuvel <[email protected]>
2023-02-20 09:36:24 +01:00
Wim Reckmanandlaravel-ide-helper 9f97f7cd5f Refactor resolving of null information for custom casted attribute types (#1330)
* Refactor resolving of null information for custom casted attribute types

* composer fix-style

---------

Co-authored-by: laravel-ide-helper <[email protected]>
2023-02-20 09:29:48 +01:00
Markus Podar 97fd0e0a2d Update changelog after new release 2.13.0 (#1418) 2023-02-04 22:04:42 +01:00
Alies Lapatsin 9f5670b7e9 Bump Psalm version (#1410)
SSH facade removed from Laravel 5:
 - https://github.com/laravel/framework/tree/v8.83.27/src/Illuminate/Support/Facades
 - https://github.com/laravel/framework/tree/v9.48.0/src/Illuminate/Support/Facades
  - https://github.com/laravel/framework/tree/10.x/src/Illuminate/Support/Facades
2023-02-04 22:04:01 +01:00
Barry vd. Heuvel 1d302435ef Update composer.json 2023-02-04 16:23:19 +01:00
127 changed files with 4167 additions and 2306 deletions
+11 -11
View File
@@ -2,14 +2,14 @@
# https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html # https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
# Ignore all test and documentation with "export-ignore". # Ignore all test and documentation with "export-ignore".
/.gitattributes export-ignore /.editorconfig export-ignore
/.github export-ignore /.gitattributes export-ignore
/.gitignore export-ignore /.github export-ignore
/.editorconfig export-ignore /.gitignore export-ignore
/phpunit.xml.dist export-ignore /.php-cs-fixer.cache export-ignore
/tests export-ignore /.php-cs-fixer.php export-ignore
/.php_cs.common.php export-ignore /.php-cs-fixer.tests.cache export-ignore
/.php_cs.dist export-ignore /phpunit.xml.dist export-ignore
/.php_cs.tests.php export-ignore /psalm-baseline.xml export-ignore
/psalm.xml export-ignore /psalm.xml export-ignore
/psalm-baseline.xml export-ignore /tests export-ignore
-1
View File
@@ -8,7 +8,6 @@ labels: bug
### Versions: ### Versions:
- ide-helper Version: #.#.# - ide-helper Version: #.#.#
- Laravel Version: #.#.# <!-- remove if not applicable --> - Laravel Version: #.#.# <!-- remove if not applicable -->
- Lumen Version: #.#.# <!-- remove if not applicable -->
- PHP Version: #.#.# - PHP Version: #.#.#
### Description: ### Description:
@@ -8,7 +8,6 @@ labels: question
### Versions: ### Versions:
- ide-helper Version: #.#.# - ide-helper Version: #.#.#
- Laravel Version: #.#.# <!-- remove if not applicable --> - Laravel Version: #.#.# <!-- remove if not applicable -->
- Lumen Version: #.#.# <!-- remove if not applicable -->
- PHP Version: #.#.# - PHP Version: #.#.#
### Question: ### Question:
+10
View File
@@ -0,0 +1,10 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
groups:
deps:
patterns:
- '*'
+3 -3
View File
@@ -9,10 +9,10 @@ on:
jobs: jobs:
normalize: normalize:
timeout-minutes: 15 timeout-minutes: 15
runs-on: ubuntu-20.04 runs-on: ubuntu-22.04
steps: steps:
- name: Git checkout - name: Git checkout
uses: actions/checkout@v2 uses: actions/checkout@v4
- name: Validate Composer configuration - name: Validate Composer configuration
run: composer validate --strict run: composer validate --strict
@@ -23,6 +23,6 @@ jobs:
composer global require ergebnis/composer-normalize composer global require ergebnis/composer-normalize
composer normalize composer normalize
- uses: stefanzweifel/git-auto-commit-action@v4.0.0 - uses: stefanzweifel/git-auto-commit-action@v5
with: with:
commit_message: normalize composer.json commit_message: normalize composer.json
+4 -4
View File
@@ -7,18 +7,18 @@ jobs:
fix-style: fix-style:
name: Fix Code Style name: Fix Code Style
timeout-minutes: 15 timeout-minutes: 15
runs-on: ubuntu-20.04 runs-on: ubuntu-22.04
env: env:
COMPOSER_NO_INTERACTION: 1 COMPOSER_NO_INTERACTION: 1
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v2 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: 8.0 php-version: 8.3
coverage: none coverage: none
- name: Install dependencies - name: Install dependencies
@@ -27,7 +27,7 @@ jobs:
- run: composer fix-style - run: composer fix-style
continue-on-error: true continue-on-error: true
- uses: stefanzweifel/git-auto-commit-action@v4 - uses: stefanzweifel/git-auto-commit-action@v5
with: with:
commit_message: composer fix-style commit_message: composer fix-style
commit_author: laravel-ide-helper <[email protected]> commit_author: laravel-ide-helper <[email protected]>
+7 -82
View File
@@ -11,96 +11,21 @@ on:
- cron: '0 0 * * *' - cron: '0 0 * * *'
jobs: jobs:
php-lumen-integration-tests:
runs-on: ubuntu-20.04
timeout-minutes: 15
env:
COMPOSER_NO_INTERACTION: 1
strategy:
matrix:
php: [8.2, 8.1, 8.0, 7.4, 7.3]
lumen: [8.*]
name: P${{ matrix.php }} - Lumen${{ matrix.lumen }}
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
path: src
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
coverage: none
- name: Install dependencies
run: |
composer create-project --prefer-dist laravel/lumen:${{ matrix.lumen }} --no-progress sample
cd sample
composer config minimum-stability dev
composer require "league/flysystem:^1" --no-update --no-progress
composer update --prefer-stable --prefer-dist --no-progress
- name: Add package from source
run: |
cd sample
sed -e 's|"type": "project",|&\n"repositories": [ { "type": "path", "url": "../src" } ],|' -i composer.json
composer require --dev "barryvdh/laravel-ide-helper:*"
- name: Insert service provider
run: sed -e 's|// \$app->register(App\\\Providers\\\EventServiceProvider::class);|&\n$app->register(\\Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider::class);|' -i sample/bootstrap/app.php
- name: Execute generate run
run: |
cd sample
php artisan ide-helper:generate
- name: Execute meta run
run: |
cd sample
php artisan ide-helper:meta -v
- name: Check file existence
run: |
ls sample/_ide_helper.php
ls sample/.phpstorm.meta.php
- name: Check logs
run: |
if [ `ls -1q "sample/storage/logs/" | wc -l` -gt 0 ]; then
for logfile in sample/storage/logs/*; do
echo "-- $logfile --"
cat $logfile
done
exit 1
fi
php-laravel-integration-tests: php-laravel-integration-tests:
runs-on: ubuntu-20.04 runs-on: ubuntu-22.04
timeout-minutes: 15 timeout-minutes: 15
env: env:
COMPOSER_NO_INTERACTION: 1 COMPOSER_NO_INTERACTION: 1
strategy: strategy:
fail-fast: false
matrix: matrix:
php: [8.2, 8.1, 8.0, 7.4, 7.3] php: [8.4, 8.3, 8.2]
laravel: [10.*, 9.*, 8.*] laravel: [^11.15]
exclude:
- php: 8.0
laravel: 10.*
- php: 7.4
laravel: 10.*
- php: 7.4
laravel: 10.*
- php: 7.3
laravel: 10.*
- php: 7.4
laravel: 9.*
- php: 7.3
laravel: 9.*
name: P${{ matrix.php }} - Laravel${{ matrix.laravel }} name: P${{ matrix.php }} - Laravel${{ matrix.laravel }}
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v2 uses: actions/checkout@v4
with: with:
path: src path: src
@@ -121,7 +46,7 @@ jobs:
run: | run: |
cd sample cd sample
sed -e 's|"type": "project",|&\n"repositories": [ { "type": "path", "url": "../src" } ],|' -i composer.json sed -e 's|"type": "project",|&\n"repositories": [ { "type": "path", "url": "../src" } ],|' -i composer.json
composer require --dev "barryvdh/laravel-ide-helper:*" composer require --dev "barryvdh/laravel-ide-helper:*" --with-all-dependencies
- name: Execute generate run - name: Execute generate run
run: | run: |
+4 -4
View File
@@ -9,15 +9,15 @@ on:
jobs: jobs:
build: build:
timeout-minutes: 15 timeout-minutes: 15
runs-on: ubuntu-20.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: 8.0 php-version: 8.3
coverage: none coverage: none
extensions: pdo_sqlite extensions: pdo_sqlite
+7 -23
View File
@@ -18,28 +18,12 @@ jobs:
COMPOSER_NO_INTERACTION: 1 COMPOSER_NO_INTERACTION: 1
strategy: strategy:
fail-fast: false
matrix: matrix:
os: [ubuntu-20.04, windows-2019] os: [ubuntu-22.04, windows-2019]
php: [8.1, 8.0, 7.4, 7.3] php: [8.4, 8.3, 8.2]
laravel: [8.*, 9.*, 10.*] laravel: [^11.15]
dependency-version: [prefer-lowest, prefer-stable] stability: [prefer-lowest, prefer-stable]
exclude:
- php: 8.0
laravel: 10.*
- php: 7.4
laravel: 10.*
- php: 7.3
laravel: 10.*
- php: 8.0
dependency-version: prefer-lowest
- php: 7.4
laravel: 9.*
- php: 7.3
laravel: 9.*
- os: windows-2019
php: 7.4
- os: windows-2019
php: 7.3
steps: steps:
- name: Set git to use LF - name: Set git to use LF
if: ${{ matrix.os == 'windows-2019' }} if: ${{ matrix.os == 'windows-2019' }}
@@ -48,7 +32,7 @@ jobs:
git config --global core.eol lf git config --global core.eol lf
- name: Checkout code - name: Checkout code
uses: actions/checkout@v2 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
@@ -62,7 +46,7 @@ jobs:
composer remove vimeo/psalm --no-update --dev composer remove vimeo/psalm --no-update --dev
composer remove friendsofphp/php-cs-fixer --no-update --dev composer remove friendsofphp/php-cs-fixer --no-update --dev
composer require "laravel/framework:${{ matrix.laravel }}" --no-update --no-progress composer require "laravel/framework:${{ matrix.laravel }}" --no-update --no-progress
composer update --prefer-dist --no-progress composer update --prefer-dist --no-progress --${{ matrix.stability }}
- name: Execute Unit Tests - name: Execute Unit Tests
run: composer test-ci run: composer test-ci
+3 -3
View File
@@ -1,8 +1,8 @@
.phpunit.result.cache .phpunit.result.cache
/.idea /.idea
/.php_cs /.php-cs-fixer.cache
/.php_cs.cache /.php-cs-fixer.php
/.php_cs.tests.cache /.php-cs-fixer.tests.cache
/composer.lock /composer.lock
/vendor /vendor
@@ -30,7 +30,6 @@ return [
], ],
'return_type_declaration' => true, 'return_type_declaration' => true,
'short_scalar_cast' => true, 'short_scalar_cast' => true,
'single_blank_line_before_namespace' => true,
'single_trait_insert_per_statement' => true, 'single_trait_insert_per_statement' => true,
'ternary_operator_spaces' => true, 'ternary_operator_spaces' => true,
'visibility_required' => [ 'visibility_required' => [
@@ -56,7 +55,7 @@ return [
'no_unused_imports' => true, 'no_unused_imports' => true,
'single_quote' => true, 'single_quote' => true,
'space_after_semicolon' => true, 'space_after_semicolon' => true,
'trailing_comma_in_multiline_array' => true, 'trailing_comma_in_multiline' => true,
'trim_array_spaces' => true, 'trim_array_spaces' => true,
'unary_operator_spaces' => true, 'unary_operator_spaces' => true,
'whitespace_after_comma_in_array' => true, 'whitespace_after_comma_in_array' => true,
+3 -3
View File
@@ -5,10 +5,10 @@ $finder = PhpCsFixer\Finder::create()
->in(__DIR__) ->in(__DIR__)
->exclude('tests'); ->exclude('tests');
$config = require __DIR__ . '/.php_cs.common.php'; $config = require __DIR__ . '/.php-cs-fixer.common.php';
return PhpCsFixer\Config::create() return (new PhpCsFixer\Config())
->setFinder($finder) ->setFinder($finder)
->setRules($config) ->setRules($config)
->setRiskyAllowed(true) ->setRiskyAllowed(true)
->setCacheFile(__DIR__ . '/.php_cs.cache'); ->setCacheFile(__DIR__ . '/.php-cs-fixer.cache');
@@ -5,7 +5,7 @@ $finder = PhpCsFixer\Finder::create()
->in(__DIR__ . '/tests') ->in(__DIR__ . '/tests')
->exclude('__snapshots__'); ->exclude('__snapshots__');
$config = require __DIR__ . '/.php_cs.common.php'; $config = require __DIR__ . '/.php-cs-fixer.common.php';
// Additional rules for tests // Additional rules for tests
$config = array_merge( $config = array_merge(
@@ -15,8 +15,8 @@ $config = array_merge(
] ]
); );
return PhpCsFixer\Config::create() return (new PhpCsFixer\Config())
->setFinder($finder) ->setFinder($finder)
->setRules($config) ->setRules($config)
->setRiskyAllowed(true) ->setRiskyAllowed(true)
->setCacheFile(__DIR__ . '/.php_cs.tests.cache'); ->setCacheFile(__DIR__ . '/.php-cs-fixer.tests.cache');
+96 -3
View File
@@ -2,15 +2,108 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
[Next release](https://github.com/barryvdh/laravel-ide-helper/compare/v2.12.3...master) [Next release](https://github.com/barryvdh/laravel-ide-helper/compare/v3.1.0...master)
-------------- --------------
### Fixes ### Fixed
- Fix type of hashed model property to `string`
### Changed
- Add support for EloquentBuilder generics introduced in Laravel 11.15.
- Drop support for Laravel versions earlier than 11.15.
### Added
2024-07-12, 3.1.0
------------------
### Fixed
- Fix return value of query scopes from parent class [#1366 / sforward](https://github.com/barryvdh/laravel-ide-helper/pull/1366)
- Add static to isBuiltin() check in ide-helper:models [#1541 / bram-pkg](https://github.com/barryvdh/laravel-ide-helper/pull/1541)
- Fix for getSomethingAttribute functions which return a collection with type templating in the phpDoc. [#1567 / stefanScrumble](https://github.com/barryvdh/laravel-ide-helper/pull/1567)
### Added
- Add type to pivot when using a custom pivot class [#1518 / d3v2a](https://github.com/barryvdh/laravel-ide-helper/pull/1518)
- Add support in morphTo relationship for null values [#1547 / matysekmichal](https://github.com/barryvdh/laravel-ide-helper/pull/1547)
- Add support for AsEnumCollection casts [#1557 / Braunson](https://github.com/barryvdh/laravel-ide-helper/pull/1557)
- Support for Attribute class in attributes [#1567 / stefanScrumble](https://github.com/barryvdh/laravel-ide-helper/pull/1567)
2024-03-01, 3.0.0
------------------
### Added
- Support for Laravel 11 [#1520 / KentarouTakeda](https://github.com/barryvdh/laravel-ide-helper/pull/1520)
### Changed
- Make `--reset` always keep the text and remove `--smart-reset`. Always skip the classname [#1523 / barryvdh](https://github.com/barryvdh/laravel-ide-helper/pull/1523) & [#1525 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1525)
- Use short types (`int` and `bool` instead of `integer` and `boolean`) [#1524 / barryvdh](https://github.com/barryvdh/laravel-ide-helper/pull/1524)
### Removed
- Support for Laravel 9 and use of doctrine/dbal [#1512 / barryvdh](https://github.com/barryvdh/laravel-ide-helper/pull/1512)
With this functionality gone, a few changes have been made:
- support for custom datatypes has been dropped (config `custom_db_types`) unknown data types default to `string` now and to fix the type, add a proper cast in Eloquent
- You _might_ have top-level dependency on doctrine/dbal. This may have been in the past due to ide-helper, we suggest to check if you still need it and remove it otherwise
- Minimum PHP version, due to Laravel 10, is now PHP 8.1
2024-02-15, 2.15.1
------------------
### Fixed
- Fix final class keyword in wrong position [#1517 / barryvdh](https://github.com/barryvdh/laravel-ide-helper/pull/1517)
### Changed
### Added
2024-02-14, 2.15.0
------------------
### Fixed
- Fix case issue in `ModelsCommand::unsetMethod()` [#1453 / leo108](https://github.com/barryvdh/laravel-ide-helper/pull/1453)
- Fix non-facade classes will result in no autocomplete [#841 / netpok](https://github.com/barryvdh/laravel-ide-helper/pull/841)
- Skip swoole, otherwise fatal error [#1477 / TimoFrenzel](https://github.com/barryvdh/laravel-ide-helper/pull/1477)
- Fix vulnerability CVE-2021-43608 [#1392 / allanlaal](https://github.com/barryvdh/laravel-ide-helper/pull/1392)
- Reset foreignKeyConstraintsColumns on model loop start [#1461 / snmatsui](https://github.com/barryvdh/laravel-ide-helper/pull/1461)
- Accept scope & scopes as relation [#1452 / Muetze42](https://github.com/barryvdh/laravel-ide-helper/pull/1452)
- Fix #1300 relation_return_type must take precedence if it is defined [#1394 / menthol](https://github.com/barryvdh/laravel-ide-helper/pull/1394)
### Changed
- Disable inspections of helper files [#1486 / eidng8](https://github.com/barryvdh/laravel-ide-helper/pull/1486)
- Removed support for Laravel 8 and therefore for PHP < 8.0 [#1504 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1504)
### Added
- Add support for enum default arguments using enum cases. [#1464 / d8vjork](https://github.com/barryvdh/laravel-ide-helper/pull/1464)
- Add support for real-time facades in the helper file. [#1455 / filipac](https://github.com/barryvdh/laravel-ide-helper/pull/1455)
- Add support for relations with composite keys. [#1479 / calebdw](https://github.com/barryvdh/laravel-ide-helper/pull/1479)
- Add support for attribute accessors with no backing field or type hinting [#1411 / pindab0ter](https://github.com/barryvdh/laravel-ide-helper/pull/1411).
- Add support for AsCollection and AsArrayObject casts [#1393 / pataar](https://github.com/barryvdh/laravel-ide-helper/pull/1393)
- Reintroduce support for multi-db setups [#1426 / benpoulson](https://github.com/barryvdh/laravel-ide-helper/pull/1426)
- Support the BINARY(...) database field type [#1434 / Sfonxs](https://github.com/barryvdh/laravel-ide-helper/pull/1434)
- Add AllowDynamicProperties Attribute to cooperate with php8.2 deprecation [#1428 / GeoSot](https://github.com/barryvdh/laravel-ide-helper/pull/1428)
2024-02-05, 2.14.0
------------------
### Changed
- Official support for Lumen has been dropped [#1425 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1425)
- Refactor resolving of null information for custom casted attribute types [#1330 / wimski](https://github.com/barryvdh/laravel-ide-helper/pull/1330)
### Fixed
- Catch exceptions when loading aliases [#1465 / dongm2ez](https://github.com/barryvdh/laravel-ide-helper/pull/1465)
### Added
- Add support for nikic/php-parser 5 (next to 4) [#1502 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1502)
- Add support for `immutable_date:*` and `immutable_datetime:*` casts. [#1380 / thekonz](https://github.com/barryvdh/laravel-ide-helper/pull/1380)
- Add support for attribute accessors marked as protected. [#1339 / pindab0ter](https://github.com/barryvdh/laravel-ide-helper/pull/1339)
2023-02-04, 2.13.0
------------------
### Fixed
- Fix return type of methods provided by `SoftDeletes` [#1345 / KentarouTakeda](https://github.com/barryvdh/laravel-ide-helper/pull/1345) - Fix return type of methods provided by `SoftDeletes` [#1345 / KentarouTakeda](https://github.com/barryvdh/laravel-ide-helper/pull/1345)
- Handle PHP 8.1 deprecation warnings when passing `null` to `new \ReflectionClass` [#1351 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1351) - Handle PHP 8.1 deprecation warnings when passing `null` to `new \ReflectionClass` [#1351 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/1351)
- Fix issue where \Eloquent is not included when using write_mixin [#1352 / Jefemy](https://github.com/barryvdh/laravel-ide-helper/pull/1352) - Fix issue where \Eloquent is not included when using write_mixin [#1352 / Jefemy](https://github.com/barryvdh/laravel-ide-helper/pull/1352)
- Fix model factory method arguments for Laravel >= 9 [#1361 / wimski](https://github.com/barryvdh/laravel-ide-helper/pull/1361) - Fix model factory method arguments for Laravel >= 9 [#1361 / wimski](https://github.com/barryvdh/laravel-ide-helper/pull/1361)
- Improve return type of mock helper methods in tests [#1405 / bentleyo](https://github.com/barryvdh/laravel-ide-helper/pull/1405) - Improve return type of mock helper methods in tests [#1405 / bentleyo](https://github.com/barryvdh/laravel-ide-helper/pull/1405)
- Fix Castable class if failed to detect it from return types [#1388 / kwarcu](https://github.com/barryvdh/laravel-ide-helper/pull/1388) - Fix Castable class if failed to detect it from return types [#1388 / kwarcu](https://github.com/barryvdh/laravel-ide-helper/pull/1388)
### Added ### Added
+21 -97
View File
@@ -1,9 +1,9 @@
# IDE Helper Generator for Laravel # IDE Helper Generator for Laravel
[![Tests](https://github.com/barryvdh/laravel-ide-helper/actions/workflows/run-tests.yml/badge.svg)](https://github.com/barryvdh/laravel-ide-helper/actions) [![Tests](https://github.com/barryvdh/laravel-ide-helper/actions/workflows/run-tests.yml/badge.svg)](https://github.com/barryvdh/laravel-ide-helper/actions)
[![Packagist License](https://poser.pugx.org/barryvdh/laravel-ide-helper/license.png)](http://choosealicense.com/licenses/mit/) [![Packagist License](https://img.shields.io/badge/Licence-MIT-blue)](http://choosealicense.com/licenses/mit/)
[![Latest Stable Version](https://poser.pugx.org/barryvdh/laravel-ide-helper/version.png)](https://packagist.org/packages/barryvdh/laravel-ide-helper) [![Latest Stable Version](https://img.shields.io/packagist/v/barryvdh/laravel-ide-helper?label=Stable)](https://packagist.org/packages/barryvdh/laravel-ide-helper)
[![Total Downloads](https://poser.pugx.org/barryvdh/laravel-ide-helper/d/total.png)](https://packagist.org/packages/barryvdh/laravel-ide-helper) [![Total Downloads](https://img.shields.io/packagist/dt/barryvdh/laravel-ide-helper?label=Downloads)](https://packagist.org/packages/barryvdh/laravel-ide-helper)
[![Fruitcake](https://img.shields.io/badge/Powered%20By-Fruitcake-b2bc35.svg)](https://fruitcake.nl/) [![Fruitcake](https://img.shields.io/badge/Powered%20By-Fruitcake-b2bc35.svg)](https://fruitcake.nl/)
**Complete PHPDocs, directly from the source** **Complete PHPDocs, directly from the source**
@@ -11,7 +11,7 @@
This package generates helper files that enable your IDE to provide accurate autocompletion. This package generates helper files that enable your IDE to provide accurate autocompletion.
Generation is done based on the files in your project, so they are always up-to-date. Generation is done based on the files in your project, so they are always up-to-date.
It supports Laravel 8+ and PHP 7.3+ The 3.x branch supports Laravel 10 and 11. For older version, use the 2.x releases.
- [Installation](#installation) - [Installation](#installation)
- [Usage](#usage) - [Usage](#usage)
@@ -23,10 +23,6 @@ It supports Laravel 8+ and PHP 7.3+
- [Automatic PHPDocs generation for Laravel Fluent methods](#automatic-phpdocs-generation-for-laravel-fluent-methods) - [Automatic PHPDocs generation for Laravel Fluent methods](#automatic-phpdocs-generation-for-laravel-fluent-methods)
- [Auto-completion for factory builders](#auto-completion-for-factory-builders) - [Auto-completion for factory builders](#auto-completion-for-factory-builders)
- [PhpStorm Meta for Container instances](#phpstorm-meta-for-container-instances) - [PhpStorm Meta for Container instances](#phpstorm-meta-for-container-instances)
- [Usage with Lumen](#usage-with-lumen)
- [Enabling Facades](#enabling-facades)
- [Adding the Service Provider](#adding-the-service-provider)
- [Adding Additional Facades](#adding-additional-facades)
- [License](#license) - [License](#license)
## Installation ## Installation
@@ -37,6 +33,10 @@ Require this package with composer using the following command:
composer require --dev barryvdh/laravel-ide-helper composer require --dev barryvdh/laravel-ide-helper
``` ```
> [!NOTE]
> If you encounter version conflicts with doctrine/dbal, please try:
> `composer require --dev barryvdh/laravel-ide-helper --with-all-dependencies`
This package makes use of [Laravels package auto-discovery mechanism](https://medium.com/@taylorotwell/package-auto-discovery-in-laravel-5-5-ea9e3ab20518), which means if you don't install dev dependencies in production, it also won't be loaded. This package makes use of [Laravels package auto-discovery mechanism](https://medium.com/@taylorotwell/package-auto-discovery-in-laravel-5-5-ea9e3ab20518), which means if you don't install dev dependencies in production, it also won't be loaded.
If for some reason you want manually control this: If for some reason you want manually control this:
@@ -72,7 +72,7 @@ If for some reason you want manually control this:
_Check out [this Laracasts video](https://laracasts.com/series/how-to-be-awesome-in-phpstorm/episodes/15) for a quick introduction/explanation!_ _Check out [this Laracasts video](https://laracasts.com/series/how-to-be-awesome-in-phpstorm/episodes/15) for a quick introduction/explanation!_
- `php artisan ide-helper:generate` - [PHPDoc generation for Laravel Facades ](#automatic-phpdoc-generation-for-laravel-facades) - `php artisan ide-helper:generate` - [PHPDoc generation for Laravel Facades ](#automatic-phpdoc-generation-for-laravel-facades)
- `php artisan ide-helper:models` - [PHPDocs for models](#automatic-PHPDocs-for-models) - `php artisan ide-helper:models` - [PHPDocs for models](#automatic-phpdocs-for-models)
- `php artisan ide-helper:meta` - [PhpStorm Meta file](#phpstorm-meta-for-container-instances) - `php artisan ide-helper:meta` - [PhpStorm Meta file](#phpstorm-meta-for-container-instances)
@@ -113,6 +113,10 @@ The generator tries to identify the real class, but if it cannot be found, you c
Some classes need a working database connection. If you do not have a default working connection, some facades will not be included. Some classes need a working database connection. If you do not have a default working connection, some facades will not be included.
You can use an in-memory SQLite driver by adding the `-M` option. You can use an in-memory SQLite driver by adding the `-M` option.
If you use [real-time facades](https://laravel.com/docs/master/facades#real-time-facades) in your app, those will also be included in the generated file using a `@mixin` annotation and extending the original class underneath the facade.
**Note**: this feature uses the generated real-time facades files in the `storage/framework/cache` folder. Those files are generated on-demand as you use the real-time facade, so if the framework has not generated that first, it will not be included in the helper file. Run the route/command/code first and then regenerate the helper file and this time the real-time facade will be included in it.
You can choose to include helper files. This is not enabled by default, but you can override it with the `--helpers (-H)` option. You can choose to include helper files. This is not enabled by default, but you can override it with the `--helpers (-H)` option.
The `Illuminate/Support/helpers.php` is already set up, but you can add/remove your own files in the config file. The `Illuminate/Support/helpers.php` is already set up, but you can add/remove your own files in the config file.
@@ -145,9 +149,9 @@ The class name will be different from the model, avoiding the IDE duplicate anno
> Please make sure to back up your models, before writing the info. > Please make sure to back up your models, before writing the info.
Writing to the models should keep the existing comments and only append new properties/methods. Writing to the models should keep the existing comments and only append new properties/methods. It will not update changed properties/methods.
The existing PHPDoc is replaced, or added if not found.
With the `--reset (-R)` option, the existing PHPDocs are ignored, and only the newly found columns/relations are saved as PHPDocs. With the `--reset (-R)` option, the whole existing PHPDoc is replaced, including any comments that have been made.
```bash ```bash
php artisan ide-helper:models "App\Models\Post" php artisan ide-helper:models "App\Models\Post"
@@ -165,11 +169,11 @@ php artisan ide-helper:models "App\Models\Post"
* @property \Illuminate\Support\Carbon $updated_at * @property \Illuminate\Support\Carbon $updated_at
* @property-read \User $author * @property-read \User $author
* @property-read \Illuminate\Database\Eloquent\Collection|\Comment[] $comments * @property-read \Illuminate\Database\Eloquent\Collection|\Comment[] $comments
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|\App\Models\Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|\App\Models\Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|\App\Models\Post query()
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Post whereTitle($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\App\Models\Post whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Post forAuthors(\User ...$authors) * @method static \Illuminate\Database\Eloquent\Builder<static>|\App\Models\Post forAuthors(\User ...$authors)
* … * …
*/ */
``` ```
@@ -267,26 +271,6 @@ add support for creating a new dedicated class instead of using local scopes in
If for some reason it's undesired to have them generated (one for each column), you can disable this via config `write_model_external_builder_methods` and setting it to `false`. If for some reason it's undesired to have them generated (one for each column), you can disable this via config `write_model_external_builder_methods` and setting it to `false`.
#### Unsupported or custom database types
Common column types (e.g. varchar, integer) are correctly mapped to PHP types (`string`, `int`).
But sometimes you may want to use custom column types in your database like `geography`, `jsonb`, `citext`, `bit`, etc. which may throw an "Unknown database type"-Exception.
For those special cases, you can map them via the config `custom_db_types`. Example:
```php
'custom_db_types' => [
'mysql' => [
'geography' => 'array',
'point' => 'array',
],
'postgresql' => [
'jsonb' => 'string',
'_int4' => 'array',
],
],
```
#### Custom Relationship Types #### Custom Relationship Types
If you are using relationships not built into Laravel you will need to specify the name and returning class in the config to get proper generation. If you are using relationships not built into Laravel you will need to specify the name and returning class in the config to get proper generation.
@@ -404,66 +388,6 @@ app(App\SomeClass::class);
You can change the generated filename via the config `meta_filename`. This can be useful for cases where you want to take advantage of PhpStorm's support of the _directory_ `.phpstorm.meta.php/`: all files placed there are parsed, should you want to provide additional files to PhpStorm. You can change the generated filename via the config `meta_filename`. This can be useful for cases where you want to take advantage of PhpStorm's support of the _directory_ `.phpstorm.meta.php/`: all files placed there are parsed, should you want to provide additional files to PhpStorm.
## Usage with Lumen
This package is focused on Laravel development, but it can also be used in Lumen with some workarounds.
Because Lumen works a little different, as it is like a bare bone version of Laravel and the main configuration
parameters are instead located in `bootstrap/app.php`, some alterations must be made.
### Enabling Facades
While Laravel IDE Helper can generate automatically default Facades for code hinting,
Lumen doesn't come with Facades activated. If you plan in using them, you must enable
them under the `Create The Application` section, uncommenting this line:
```php
// $app->withFacades();
```
From there, you should be able to use the `create_alias()` function to add additional Facades into your application.
### Adding the Service Provider
You can install Laravel IDE Helper in `app/Providers/AppServiceProvider.php`,
and uncommenting this line that registers the App Service Providers, so it can properly load.
```php
// $app->register(App\Providers\AppServiceProvider::class);
```
If you are not using that line, that is usually handy to manage gracefully multiple Laravel/Lumen installations,
you will have to add this line of code under the `Register Service Providers` section of your `bootstrap/app.php`.
```php
if ($app->environment() !== 'production') {
$app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
```
After that, Laravel IDE Helper should work correctly. During the generation process,
the script may throw exceptions saying that some Class(s) doesn't exist or there are some undefined indexes.
This is normal, as Lumen has some default packages stripped away, like Cookies, Storage and Session.
If you plan to add these packages, you will have to add them manually and create additional Facades if needed.
### Adding Additional Facades
Currently, Lumen IDE Helper doesn't take into account additional Facades created under `bootstrap/app.php` using `create_alias()`,
so you need to create a `config/app.php` file and add your custom aliases under an `aliases` array again, like so:
```php
return [
'aliases' => [
'CustomAliasOne' => Example\Support\Facades\CustomAliasOne::class,
'CustomAliasTwo' => Example\Support\Facades\CustomAliasTwo::class,
//...
]
];
```
After you run `php artisan ide-helper:generate`, it's recommended (but not mandatory) to rename `config/app.php` to something else,
until you have to re-generate the docs or after passing to production environment.
Lumen 5.1+ will read this file for configuration parameters if it is present, and may overlap some configurations if it is completely populated.
## License ## License
The Laravel IDE Helper Generator is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT) The Laravel IDE Helper Generator is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT)
+17 -17
View File
@@ -20,30 +20,30 @@
} }
], ],
"require": { "require": {
"php": "^7.3 || ^8.0", "php": "^8.2",
"ext-json": "*", "ext-json": "*",
"barryvdh/reflection-docblock": "^2.0.6", "barryvdh/reflection-docblock": "^2.1.2",
"composer/class-map-generator": "^1.0", "composer/class-map-generator": "^1.0",
"doctrine/dbal": "^2.6 || ^3", "illuminate/console": "^11.15",
"illuminate/console": "^8 || ^9 || ^10", "illuminate/database": "^11.15",
"illuminate/filesystem": "^8 || ^9 || ^10", "illuminate/filesystem": "^11.15",
"illuminate/support": "^8 || ^9 || ^10", "illuminate/support": "^11.15",
"nikic/php-parser": "^4.7", "nikic/php-parser": "^4.18 || ^5",
"phpdocumentor/type-resolver": "^1.1.0" "phpdocumentor/type-resolver": "^1.1.0"
}, },
"require-dev": { "require-dev": {
"ext-pdo_sqlite": "*", "ext-pdo_sqlite": "*",
"friendsofphp/php-cs-fixer": "^2", "friendsofphp/php-cs-fixer": "^3",
"illuminate/config": "^8 || ^9 || ^10", "illuminate/config": "^11.15",
"illuminate/view": "^8 || ^9 || ^10", "illuminate/view": "^11.15",
"mockery/mockery": "^1.4", "mockery/mockery": "^1.4",
"orchestra/testbench": "^6 || ^7 || ^8", "orchestra/testbench": "^9.2",
"phpunit/phpunit": "^8.5 || ^9", "phpunit/phpunit": "^10.5",
"spatie/phpunit-snapshot-assertions": "^3 || ^4", "spatie/phpunit-snapshot-assertions": "^4 || ^5",
"vimeo/psalm": "^3.12" "vimeo/psalm": "^5.4"
}, },
"suggest": { "suggest": {
"illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10)." "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10|^11)."
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true, "prefer-stable": true,
@@ -65,7 +65,7 @@
}, },
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.12-dev" "dev-master": "3.2-dev"
}, },
"laravel": { "laravel": {
"providers": [ "providers": [
@@ -81,7 +81,7 @@
], ],
"fix-style": [ "fix-style": [
"php-cs-fixer fix", "php-cs-fixer fix",
"php-cs-fixer fix --config=.php_cs.tests.php" "php-cs-fixer fix --config=.php-cs-fixer.tests.php"
], ],
"psalm-set-baseline": "psalm --set-baseline=psalm-baseline.xml", "psalm-set-baseline": "psalm --set-baseline=psalm-baseline.xml",
"test": "phpunit", "test": "phpunit",
+27 -56
View File
@@ -4,21 +4,21 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Filename & Format | Filename
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| The default filename | The default filename.
| |
*/ */
'filename' => '_ide_helper.php', 'filename' => '_ide_helper.php',
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Models filename | Models filename
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| The default filename for the models helper file | The default filename for the models helper file.
| |
*/ */
@@ -26,7 +26,7 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Where to write the PhpStorm specific meta file | PhpStorm meta filename
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| PhpStorm also supports the directory `.phpstorm.meta.php/` with arbitrary | PhpStorm also supports the directory `.phpstorm.meta.php/` with arbitrary
@@ -41,7 +41,7 @@ return [
| Fluent helpers | Fluent helpers
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Set to true to generate commonly used Fluent methods | Set to true to generate commonly used Fluent methods.
| |
*/ */
@@ -49,7 +49,7 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Factory Builders | Factory builders
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Set to true to generate factory generators for better factory() | Set to true to generate factory generators for better factory()
@@ -63,10 +63,10 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Write Model Magic methods | Write model magic methods
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Set to false to disable write magic methods of model | Set to false to disable write magic methods of model.
| |
*/ */
@@ -74,10 +74,10 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Write Model External Eloquent Builder methods | Write model external Eloquent builder methods
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Set to false to disable write external eloquent builder methods | Set to false to disable write external Eloquent builder methods.
| |
*/ */
@@ -85,7 +85,7 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Write Model relation count properties | Write model relation count properties
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Set to false to disable writing of relation count properties to model DocBlocks. | Set to false to disable writing of relation count properties to model DocBlocks.
@@ -96,11 +96,11 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Write Eloquent Model Mixins | Write Eloquent model mixins
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| This will add the necessary DocBlock mixins to the model class | This will add the necessary DocBlock mixins to the model class
| contained in the Laravel Framework. This helps the IDE with | contained in the Laravel framework. This helps the IDE with
| auto-completion. | auto-completion.
| |
| Please be aware that this setting changes a file within the /vendor directory. | Please be aware that this setting changes a file within the /vendor directory.
@@ -134,7 +134,7 @@ return [
| for models. | for models.
| |
| glob patterns are supported to easier reach models in sub-directories, | glob patterns are supported to easier reach models in sub-directories,
| e.g. `app/Services/* /Models` (without the space) | e.g. `app/Services/* /Models` (without the space).
| |
*/ */
@@ -152,7 +152,7 @@ return [
*/ */
'ignored_models' => [ 'ignored_models' => [
// App\MyModel::class,
], ],
/* /*
@@ -160,7 +160,7 @@ return [
| Models hooks | Models hooks
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Define which hook classes you want to run for models to add custom information | Define which hook classes you want to run for models to add custom information.
| |
| Hooks should implement Barryvdh\LaravelIdeHelper\Contracts\ModelHookInterface. | Hooks should implement Barryvdh\LaravelIdeHelper\Contracts\ModelHookInterface.
| |
@@ -175,7 +175,7 @@ return [
| Extra classes | Extra classes
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| These implementations are not really extended, but called with magic functions | These implementations are not really extended, but called with magic functions.
| |
*/ */
@@ -197,37 +197,7 @@ return [
*/ */
'interfaces' => [ 'interfaces' => [
// App\MyInterface::class => App\MyImplementation::class,
],
/*
|--------------------------------------------------------------------------
| Support for custom DB types
|--------------------------------------------------------------------------
|
| This setting allow you to map any custom database type (that you may have
| created using CREATE TYPE statement or imported using database plugin
| / extension to a Doctrine type.
|
| Each key in this array is a name of the Doctrine2 DBAL Platform. Currently valid names are:
| 'postgresql', 'db2', 'drizzle', 'mysql', 'oracle', 'sqlanywhere', 'sqlite', 'mssql'
|
| This name is returned by getName() method of the specific Doctrine/DBAL/Platforms/AbstractPlatform descendant
|
| The value of the array is an array of type mappings. Key is the name of the custom type,
| (for example, "jsonb" from Postgres 9.4) and the value is the name of the corresponding Doctrine2 type (in
| our case it is 'json_array'. Doctrine types are listed here:
| https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/types.html#types
|
| So to support jsonb in your models when working with Postgres, just add the following entry to the array below:
|
| "postgresql" => array(
| "jsonb" => "json_array",
| ),
|
*/
'custom_db_types' => [
], ],
/* /*
@@ -258,7 +228,7 @@ return [
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Property Casts | Property casts
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Cast the given "real type" to the given "type". | Cast the given "real type" to the given "type".
@@ -285,9 +255,9 @@ return [
| Force FQN usage | Force FQN usage
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Use the fully qualified (class) name in docBlock, | Use the fully qualified (class) name in DocBlocks,
| event if class exists in a given file | even if the class exists in the same namespace
| or there is an import (use className) of a given class | or there is an import (use className) of the class.
| |
*/ */
'force_fqn' => false, 'force_fqn' => false,
@@ -309,8 +279,8 @@ return [
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| Sometimes it's needed to create custom relation types. The key of the array | Sometimes it's needed to create custom relation types. The key of the array
| is the Relationship Method name. The value of the array is the canonical class | is the relationship method name. The value of the array is the fully-qualified
| name of the Relationship, e.g. `'relationName' => RelationShipClass::class`. | class name of the relationship, e.g. `'relationName' => RelationShipClass::class`.
| |
*/ */
'additional_relation_types' => [], 'additional_relation_types' => [],
@@ -322,7 +292,8 @@ return [
| |
| When using custom relation types its possible for the class name to not contain | When using custom relation types its possible for the class name to not contain
| the proper return type of the relation. The key of the array is the relationship | the proper return type of the relation. The key of the array is the relationship
| method name. The value of the array is the return type of the relation. | method name. The value of the array is the return type of the relation ('many'
| or 'morphTo').
| e.g. `'relationName' => 'many'`. | e.g. `'relationName' => 'many'`.
| |
*/ */
+7 -14
View File
@@ -1,24 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <phpunit
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
bootstrap="vendor/autoload.php" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.5/phpunit.xsd"
backupGlobals="false" cacheDirectory=".phpunit.result.cache"
backupStaticAttributes="false" >
colors="true"
verbose="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false">
<testsuites> <testsuites>
<testsuite name="Unit Tests"> <testsuite name="Unit Tests">
<directory>tests</directory> <directory>tests</directory>
</testsuite> </testsuite>
</testsuites> </testsuites>
<coverage> <source>
<include> <include>
<directory suffix=".php">src/</directory> <directory suffix=".php">src/</directory>
</include> </include>
</coverage> </source>
</phpunit> </phpunit>
+9 -5
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="3.15@de6e7f324f44dde540ebe7ebd4eb481b97c86f30"> <files psalm-version="5.4.0@62db5d4f6a7ae0a20f7cc5a4952d730272fc0863">
<file src="src/Factories.php"> <file src="src/Factories.php">
<UndefinedClass occurrences="2"> <UndefinedClass occurrences="2">
<code>Factory</code> <code>Factory</code>
@@ -7,14 +7,18 @@
</UndefinedClass> </UndefinedClass>
</file> </file>
<file src="src/Generator.php"> <file src="src/Generator.php">
<UndefinedClass occurrences="7"> <UndefinedClass occurrences="6">
<code>\Auth</code> <code>\Auth</code>
<code>\Cache</code>
<code>\Cache</code>
<code>\DB</code> <code>\DB</code>
<code>\Cache</code>
<code>\Cache</code>
<code>\Queue</code> <code>\Queue</code>
<code>\SSH</code>
<code>\Storage</code> <code>\Storage</code>
</UndefinedClass> </UndefinedClass>
</file> </file>
<file src="src/Console/ModelsCommand.php">
<UndefinedClass occurrences="1">
<code>\UnitEnum</code>
</UndefinedClass>
</file>
</files> </files>
+21 -13
View File
@@ -8,6 +8,7 @@
*/ */
?> ?>
/* @noinspection ALL */
// @formatter:off // @formatter:off
// phpcs:ignoreFile // phpcs:ignoreFile
@@ -22,15 +23,12 @@
*/ */
<?php foreach ($namespaces_by_extends_ns as $namespace => $aliases) : ?> <?php foreach ($namespaces_by_extends_ns as $namespace => $aliases) : ?>
<?php if ($namespace == '\Illuminate\Database\Eloquent') : namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> {
continue;
endif; ?>
namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> {
<?php foreach ($aliases as $alias) : ?> <?php foreach ($aliases as $alias) : ?>
<?= trim($alias->getDocComment(' ')) ?> <?= trim($alias->getDocComment(' ')) ?>
<?= $alias->getClassType() ?> <?= $alias->getExtendsClass() ?> { <?= $alias->getClassType() ?> <?= $alias->getExtendsClass() ?> {
<?php foreach ($alias->getMethods() as $method) : ?> <?php foreach ($alias->getMethods() as $method) : ?>
<?= trim($method->getDocComment(' ')) ?> <?= trim($method->getDocComment(' ')) ?>
public static function <?= $method->getName() ?>(<?= $method->getParamsWithDefault() ?>) public static function <?= $method->getName() ?>(<?= $method->getParamsWithDefault() ?>)
{<?php if ($method->getDeclaringClass() !== $method->getRoot()) : ?> {<?php if ($method->getDeclaringClass() !== $method->getRoot()) : ?>
//Method inherited from <?= $method->getDeclaringClass() ?> //Method inherited from <?= $method->getDeclaringClass() ?>
@@ -41,19 +39,19 @@ namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> {
<?php endif?> <?php endif?>
<?= $method->shouldReturn() ? 'return ' : '' ?><?= $method->getRootMethodCall() ?>; <?= $method->shouldReturn() ? 'return ' : '' ?><?= $method->getRootMethodCall() ?>;
} }
<?php endforeach; ?> <?php endforeach; ?>
} }
<?php endforeach; ?> <?php endforeach; ?>
} }
<?php endforeach; ?> <?php endforeach; ?>
<?php foreach ($namespaces_by_alias_ns as $namespace => $aliases) : ?> <?php foreach ($namespaces_by_alias_ns as $namespace => $aliases) : ?>
namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> { namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> {
<?php foreach ($aliases as $alias) : ?> <?php foreach ($aliases as $alias) : ?>
<?= $alias->getClassType() ?> <?= $alias->getShortName() ?> extends <?= $alias->getExtends() ?> {<?php if ($alias->getExtendsNamespace() == '\Illuminate\Database\Eloquent') : ?> <?= $alias->getClassType() ?> <?= $alias->getShortName() ?> extends <?= $alias->getExtends() ?> {<?php if ($alias->getExtendsNamespace() == '\Illuminate\Database\Eloquent') : ?>
<?php foreach ($alias->getMethods() as $method) : ?> <?php foreach ($alias->getMethods() as $method) : ?>
<?= trim($method->getDocComment(' ')) ?> <?= trim($method->getDocComment(' ')) ?>
public static function <?= $method->getName() ?>(<?= $method->getParamsWithDefault() ?>) public static function <?= $method->getName() ?>(<?= $method->getParamsWithDefault() ?>)
{<?php if ($method->getDeclaringClass() !== $method->getRoot()) : ?> {<?php if ($method->getDeclaringClass() !== $method->getRoot()) : ?>
//Method inherited from <?= $method->getDeclaringClass() ?> //Method inherited from <?= $method->getDeclaringClass() ?>
@@ -66,14 +64,24 @@ namespace <?= $namespace == '__root' ? '' : trim($namespace, '\\') ?> {
} }
<?php endforeach; ?> <?php endforeach; ?>
<?php endif; ?>} <?php endif; ?>}
<?php endforeach; ?> <?php endforeach; ?>
} }
<?php endforeach; ?> <?php endforeach; ?>
<?php foreach($real_time_facades as $name): ?>
<?php $nested = explode('\\', str_replace('\\' . class_basename($name), '', $name)); ?>
namespace <?php echo implode('\\', $nested); ?> {
/**
* @mixin <?= str_replace('Facades', '', $name) ?>
*/
class <?= class_basename($name) ?> extends <?= str_replace('Facades', '', $name) ?> {}
}
<?php endforeach; ?>
<?php if ($helpers) : ?> <?php if ($helpers) : ?>
namespace { namespace {
<?= $helpers ?> <?= $helpers ?>
} }
<?php endif; ?> <?php endif; ?>
+2
View File
@@ -1,6 +1,8 @@
<?= '<?php' ?> <?= '<?php' ?>
/* @noinspection ALL */
// @formatter:off // @formatter:off
// phpcs:ignoreFile
namespace PHPSTORM_META { namespace PHPSTORM_META {
+5 -4
View File
@@ -20,6 +20,7 @@ use Illuminate\Config\Repository as ConfigRepository;
use Illuminate\Database\Eloquent\Builder as EloquentBuilder; use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
use Illuminate\Support\Facades\Facade; use Illuminate\Support\Facades\Facade;
use ReflectionClass; use ReflectionClass;
use Throwable;
class Alias class Alias
{ {
@@ -301,7 +302,7 @@ class Alias
"\nPlease configure your database connection correctly, or use the sqlite memory driver (-M)." . "\nPlease configure your database connection correctly, or use the sqlite memory driver (-M)." .
" Skipping $facade." " Skipping $facade."
); );
} catch (\Exception $e) { } catch (Throwable $e) {
$this->error('Exception: ' . $e->getMessage() . "\nSkipping $facade."); $this->error('Exception: ' . $e->getMessage() . "\nSkipping $facade.");
} }
} }
@@ -323,12 +324,12 @@ class Alias
protected function addMagicMethods() protected function addMagicMethods()
{ {
foreach ($this->magicMethods as $magic => $real) { foreach ($this->magicMethods as $magic => $real) {
list($className, $name) = explode('::', $real); [$className, $name] = explode('::', $real);
if ((!class_exists($className) && !interface_exists($className)) || !method_exists($className, $name)) { if ((!class_exists($className) && !interface_exists($className)) || !method_exists($className, $name)) {
continue; continue;
} }
$method = new \ReflectionMethod($className, $name); $method = new \ReflectionMethod($className, $name);
$class = new \ReflectionClass($className); $class = new ReflectionClass($className);
if (!in_array($magic, $this->usedMethods)) { if (!in_array($magic, $this->usedMethods)) {
if ($class !== $this->root) { if ($class !== $this->root) {
@@ -347,7 +348,7 @@ class Alias
protected function detectMethods() protected function detectMethods()
{ {
foreach ($this->classes as $class) { foreach ($this->classes as $class) {
$reflection = new \ReflectionClass($class); $reflection = new ReflectionClass($class);
$methods = $reflection->getMethods(\ReflectionMethod::IS_PUBLIC); $methods = $reflection->getMethods(\ReflectionMethod::IS_PUBLIC);
if ($methods) { if ($methods) {
+2 -2
View File
@@ -42,7 +42,7 @@ class GeneratorCommand extends Command
/** @var \Illuminate\Config\Repository */ /** @var \Illuminate\Config\Repository */
protected $config; protected $config;
/** @var \Illuminate\Filesystem\Filesystem */ /** @var Filesystem */
protected $files; protected $files;
/** @var \Illuminate\View\Factory */ /** @var \Illuminate\View\Factory */
@@ -54,7 +54,7 @@ class GeneratorCommand extends Command
/** /**
* *
* @param \Illuminate\Config\Repository $config * @param \Illuminate\Config\Repository $config
* @param \Illuminate\Filesystem\Filesystem $files * @param Filesystem $files
* @param \Illuminate\View\Factory $view * @param \Illuminate\View\Factory $view
*/ */
public function __construct( public function __construct(
+277 -203
View File
@@ -12,17 +12,19 @@
namespace Barryvdh\LaravelIdeHelper\Console; namespace Barryvdh\LaravelIdeHelper\Console;
use Barryvdh\LaravelIdeHelper\Contracts\ModelHookInterface; use Barryvdh\LaravelIdeHelper\Contracts\ModelHookInterface;
use Barryvdh\LaravelIdeHelper\Parsers\PhpDocReturnTypeParser;
use Barryvdh\Reflection\DocBlock; use Barryvdh\Reflection\DocBlock;
use Barryvdh\Reflection\DocBlock\Context; use Barryvdh\Reflection\DocBlock\Context;
use Barryvdh\Reflection\DocBlock\Serializer as DocBlockSerializer; use Barryvdh\Reflection\DocBlock\Serializer as DocBlockSerializer;
use Barryvdh\Reflection\DocBlock\Tag; use Barryvdh\Reflection\DocBlock\Tag;
use Composer\ClassMapGenerator\ClassMapGenerator; use Composer\ClassMapGenerator\ClassMapGenerator;
use Doctrine\DBAL\Exception as DBALException;
use Doctrine\DBAL\Types\Type;
use Illuminate\Console\Command; use Illuminate\Console\Command;
use Illuminate\Contracts\Database\Eloquent\Castable; use Illuminate\Contracts\Database\Eloquent\Castable;
use Illuminate\Contracts\Database\Eloquent\CastsAttributes; use Illuminate\Contracts\Database\Eloquent\CastsAttributes;
use Illuminate\Contracts\Database\Eloquent\CastsInboundAttributes; use Illuminate\Contracts\Database\Eloquent\CastsInboundAttributes;
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
use Illuminate\Database\Eloquent\Casts\AsCollection;
use Illuminate\Database\Eloquent\Casts\AsEnumCollection;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
@@ -34,10 +36,14 @@ use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Relations\HasOneThrough; use Illuminate\Database\Eloquent\Relations\HasOneThrough;
use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\Relations\MorphOne; use Illuminate\Database\Eloquent\Relations\MorphOne;
use Illuminate\Database\Eloquent\Relations\MorphPivot;
use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\Relations\MorphTo;
use Illuminate\Database\Eloquent\Relations\MorphToMany; use Illuminate\Database\Eloquent\Relations\MorphToMany;
use Illuminate\Database\Eloquent\Relations\Pivot;
use Illuminate\Database\Eloquent\Relations\Relation; use Illuminate\Database\Eloquent\Relations\Relation;
use Illuminate\Database\Schema\Builder;
use Illuminate\Filesystem\Filesystem; use Illuminate\Filesystem\Filesystem;
use Illuminate\Support\Arr;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use phpDocumentor\Reflection\Types\ContextFactory; use phpDocumentor\Reflection\Types\ContextFactory;
@@ -103,11 +109,10 @@ class ModelsCommand extends Command
protected $write_mixin = false; protected $write_mixin = false;
protected $dirs = []; protected $dirs = [];
protected $reset; protected $reset;
protected $keep_text;
protected $phpstorm_noinspections; protected $phpstorm_noinspections;
protected $write_model_external_builder_methods; protected $write_model_external_builder_methods;
/** /**
* @var bool[string] * @var array<string, true>
*/ */
protected $nullableColumns = []; protected $nullableColumns = [];
/** /**
@@ -151,9 +156,6 @@ class ModelsCommand extends Command
$ignore = $this->option('ignore'); $ignore = $this->option('ignore');
$this->reset = $this->option('reset'); $this->reset = $this->option('reset');
$this->phpstorm_noinspections = $this->option('phpstorm-noinspections'); $this->phpstorm_noinspections = $this->option('phpstorm-noinspections');
if ($this->option('smart-reset')) {
$this->keep_text = $this->reset = true;
}
$this->write_model_magic_where = $this->laravel['config']->get('ide-helper.write_model_magic_where', true); $this->write_model_magic_where = $this->laravel['config']->get('ide-helper.write_model_magic_where', true);
$this->write_model_external_builder_methods = $this->laravel['config']->get('ide-helper.write_model_external_builder_methods', true); $this->write_model_external_builder_methods = $this->laravel['config']->get('ide-helper.write_model_external_builder_methods', true);
$this->write_model_relation_count_properties = $this->write_model_relation_count_properties =
@@ -196,7 +198,7 @@ class ModelsCommand extends Command
protected function getArguments() protected function getArguments()
{ {
return [ return [
['model', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'Which models to include', []], ['model', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'Which models to include', []],
]; ];
} }
@@ -208,21 +210,21 @@ class ModelsCommand extends Command
protected function getOptions() protected function getOptions()
{ {
return [ return [
['filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the helper file'], ['filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the helper file'],
['dir', 'D', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, ['dir', 'D', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY,
'The model dir, supports glob patterns', [], ], 'The model dir, supports glob patterns', [], ],
['write', 'W', InputOption::VALUE_NONE, 'Write to Model file'], ['write', 'W', InputOption::VALUE_NONE, 'Write to Model file'],
['write-mixin', 'M', InputOption::VALUE_NONE, ['write-mixin', 'M', InputOption::VALUE_NONE,
"Write models to {$this->filename} and adds @mixin to each model, avoiding IDE duplicate declaration warnings", "Write models to {$this->filename} and adds @mixin to each model, avoiding IDE duplicate declaration warnings",
], ],
['nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'], ['nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'],
['reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'], ['reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'],
['smart-reset', 'r', InputOption::VALUE_NONE, 'Refresh the properties/methods list, but keep the text'], ['smart-reset', 'r', InputOption::VALUE_NONE, 'Refresh the properties/methods list, but keep the text'],
['phpstorm-noinspections', 'p', InputOption::VALUE_NONE, ['phpstorm-noinspections', 'p', InputOption::VALUE_NONE,
'Add PhpFullyQualifiedNameUsageInspection and PhpUnnecessaryFullyQualifiedNameInspection PHPStorm ' . 'Add PhpFullyQualifiedNameUsageInspection and PhpUnnecessaryFullyQualifiedNameInspection PHPStorm ' .
'noinspection tags', 'noinspection tags',
], ],
['ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''], ['ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''],
]; ];
} }
@@ -231,6 +233,7 @@ class ModelsCommand extends Command
$output = "<?php $output = "<?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -240,8 +243,6 @@ class ModelsCommand extends Command
*/ */
\n\n"; \n\n";
$hasDoctrine = interface_exists('Doctrine\DBAL\Driver');
if (empty($loadModels)) { if (empty($loadModels)) {
$models = $this->loadModels(); $models = $this->loadModels();
} else { } else {
@@ -265,6 +266,7 @@ class ModelsCommand extends Command
} }
$this->properties = []; $this->properties = [];
$this->methods = []; $this->methods = [];
$this->foreignKeyConstraintsColumns = [];
if (class_exists($name)) { if (class_exists($name)) {
try { try {
// handle abstract classes, interfaces, ... // handle abstract classes, interfaces, ...
@@ -283,9 +285,7 @@ class ModelsCommand extends Command
$model = $this->laravel->make($name); $model = $this->laravel->make($name);
if ($hasDoctrine) { $this->getPropertiesFromTable($model);
$this->getPropertiesFromTable($model);
}
if (method_exists($model, 'getCasts')) { if (method_exists($model, 'getCasts')) {
$this->castPropertiesType($model); $this->castPropertiesType($model);
@@ -309,13 +309,6 @@ class ModelsCommand extends Command
} }
} }
if (!$hasDoctrine) {
$this->error(
'Warning: `"doctrine/dbal": "~2.3"` is required to load database information. ' .
'Please require that in your composer.json and run `composer update`.'
);
}
return $output; return $output;
} }
@@ -353,7 +346,7 @@ class ModelsCommand extends Command
/** /**
* cast the properties's type from $casts. * cast the properties's type from $casts.
* *
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
*/ */
public function castPropertiesType($model) public function castPropertiesType($model)
{ {
@@ -369,6 +362,10 @@ class ModelsCommand extends Command
$type = 'date'; $type = 'date';
} elseif (Str::startsWith($type, 'immutable_custom_datetime:')) { } elseif (Str::startsWith($type, 'immutable_custom_datetime:')) {
$type = 'immutable_date'; $type = 'immutable_date';
} elseif (Str::startsWith($type, 'immutable_date:')) {
$type = 'immutable_date';
} elseif (Str::startsWith($type, 'immutable_datetime:')) {
$type = 'immutable_datetime';
} elseif (Str::startsWith($type, 'encrypted:')) { } elseif (Str::startsWith($type, 'encrypted:')) {
$type = Str::after($type, ':'); $type = Str::after($type, ':');
} }
@@ -381,10 +378,11 @@ class ModelsCommand extends Command
break; break;
case 'boolean': case 'boolean':
case 'bool': case 'bool':
$realType = 'boolean'; $realType = 'bool';
break; break;
case 'decimal': case 'decimal':
case 'string': case 'string':
case 'hashed':
$realType = 'string'; $realType = 'string';
break; break;
case 'array': case 'array':
@@ -397,7 +395,7 @@ class ModelsCommand extends Command
case 'int': case 'int':
case 'integer': case 'integer':
case 'timestamp': case 'timestamp':
$realType = 'integer'; $realType = 'int';
break; break;
case 'real': case 'real':
case 'double': case 'double':
@@ -412,9 +410,14 @@ class ModelsCommand extends Command
case 'immutable_datetime': case 'immutable_datetime':
$realType = '\Carbon\CarbonImmutable'; $realType = '\Carbon\CarbonImmutable';
break; break;
case AsCollection::class:
case AsEnumCollection::class:
case 'collection': case 'collection':
$realType = '\Illuminate\Support\Collection'; $realType = '\Illuminate\Support\Collection';
break; break;
case AsArrayObject::class:
$realType = '\ArrayObject';
break;
default: default:
// In case of an optional custom cast parameter , only evaluate // In case of an optional custom cast parameter , only evaluate
// the `$type` until the `:` // the `$type` until the `:`
@@ -437,14 +440,46 @@ class ModelsCommand extends Command
$realType = $this->checkForCastableCasts($realType, $params); $realType = $this->checkForCastableCasts($realType, $params);
$realType = $this->checkForCustomLaravelCasts($realType); $realType = $this->checkForCustomLaravelCasts($realType);
$realType = $this->getTypeOverride($realType); $realType = $this->getTypeOverride($realType);
$this->properties[$name]['type'] = $this->getTypeInModel($model, $realType); $realType = $this->getTypeInModel($model, $realType);
$realType = $this->applyNullability($realType, isset($this->nullableColumns[$name]));
if (isset($this->nullableColumns[$name])) { $this->properties[$name]['type'] = $realType;
$this->properties[$name]['type'] .= '|null';
}
} }
} }
protected function applyNullability(?string $type, bool $isNullable): ?string
{
if (!$type) {
return null;
}
$nullString = null;
// Find instance of:
// A) start of string or non-word character (like space or pipe) followed by 'null|'
// B) '|null' followed by end of string or non-word character (like space or pipe)
// This will find 'or null' instances at the beginning, middle or end of a type string,
// but will exclude solo/pure null instances and null being part of a type's name (e.g. class 'Benull').
if (preg_match('/(?:(?:^|\W)(null\|))|(\|null(?:$|\W))/', $type, $matches) === 1) {
$nullString = array_pop($matches);
}
// Return the current type string if:
// A) the type can be null and the type contains a null instance
// B) the type can not be null and the type does not contain a null instance
if (!($isNullable xor $nullString)) {
return $type;
}
if ($isNullable) {
$type .= '|null';
} else {
$type = str_replace($nullString, '', $type);
}
return $type;
}
/** /**
* Returns the override type for the give type. * Returns the override type for the give type.
* *
@@ -461,33 +496,16 @@ class ModelsCommand extends Command
/** /**
* Load the properties from the database table. * Load the properties from the database table.
* *
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
* *
* @throws DBALException If custom field failed to register
*/ */
public function getPropertiesFromTable($model) public function getPropertiesFromTable($model)
{ {
$database = $model->getConnection()->getDatabaseName(); $table = $model->getTable();
$table = $model->getConnection()->getTablePrefix() . $model->getTable(); $schema = $model->getConnection()->getSchemaBuilder();
$schema = $model->getConnection()->getDoctrineSchemaManager(); $columns = $schema->getColumns($table);
$databasePlatform = $schema->getDatabasePlatform(); $driverName = $model->getConnection()->getDriverName();
$databasePlatform->registerDoctrineTypeMapping('enum', 'string');
$platformName = $databasePlatform->getName();
$customTypes = $this->laravel['config']->get("ide-helper.custom_db_types.{$platformName}", []);
foreach ($customTypes as $yourTypeName => $doctrineTypeName) {
try {
if (!Type::hasType($yourTypeName)) {
Type::addType($yourTypeName, get_class(Type::getType($doctrineTypeName)));
}
} catch (DBALException $exception) {
$this->error("Failed registering custom db type \"$yourTypeName\" as \"$doctrineTypeName\"");
throw $exception;
}
$databasePlatform->registerDoctrineTypeMapping($yourTypeName, $doctrineTypeName);
}
$columns = $schema->listTableColumns($table, $database);
if (!$columns) { if (!$columns) {
return; return;
@@ -495,49 +513,28 @@ class ModelsCommand extends Command
$this->setForeignKeys($schema, $table); $this->setForeignKeys($schema, $table);
foreach ($columns as $column) { foreach ($columns as $column) {
$name = $column->getName(); $name = $column['name'];
if (in_array($name, $model->getDates())) { if (in_array($name, $model->getDates())) {
$type = $this->dateClass; $type = $this->dateClass;
} else { } else {
$type = $column->getType()->getName(); // Match types to php equivalent
switch ($type) { $type = match ($column['type_name']) {
case 'string': 'tinyint', 'bit',
case 'text': 'integer', 'int', 'int4',
case 'date': 'smallint', 'int2',
case 'time': 'mediumint',
case 'guid': 'bigint', 'int8' => 'int',
case 'datetimetz':
case 'datetime': 'boolean', 'bool' => 'bool',
case 'decimal':
$type = 'string'; 'float', 'real', 'float4',
break; 'double', 'float8' => 'float',
case 'integer':
case 'bigint': default => 'string',
case 'smallint': };
$type = 'integer';
break;
case 'boolean':
switch ($platformName) {
case 'sqlite':
case 'mysql':
$type = 'integer';
break;
default:
$type = 'boolean';
break;
}
break;
case 'float':
$type = 'float';
break;
default:
$type = 'mixed';
break;
}
} }
$comment = $column->getComment(); if ($column['nullable']) {
if (!$column->getNotnull()) {
$this->nullableColumns[$name] = true; $this->nullableColumns[$name] = true;
} }
$this->setProperty( $this->setProperty(
@@ -545,8 +542,8 @@ class ModelsCommand extends Command
$this->getTypeInModel($model, $type), $this->getTypeInModel($model, $type),
true, true,
true, true,
$comment, $column['comment'],
!$column->getNotnull() $column['nullable']
); );
if ($this->write_model_magic_where) { if ($this->write_model_magic_where) {
$builderClass = $this->write_model_external_builder_methods $builderClass = $this->write_model_external_builder_methods
@@ -556,7 +553,7 @@ class ModelsCommand extends Command
$this->setMethod( $this->setMethod(
Str::camel('where_' . $name), Str::camel('where_' . $name),
$this->getClassNameInDestinationFile($model, $builderClass) $this->getClassNameInDestinationFile($model, $builderClass)
. '|' . '<static>|'
. $this->getClassNameInDestinationFile($model, get_class($model)), . $this->getClassNameInDestinationFile($model, get_class($model)),
['$value'] ['$value']
); );
@@ -565,22 +562,30 @@ class ModelsCommand extends Command
} }
/** /**
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
*/ */
public function getPropertiesFromMethods($model) public function getPropertiesFromMethods($model)
{ {
$methods = get_class_methods($model); $reflectionClass = new ReflectionClass($model);
if ($methods) { $reflections = $reflectionClass->getMethods();
sort($methods); if ($reflections) {
foreach ($methods as $method) { // Filter out private methods because they can't be used to generate magic properties and HasAttributes'
$reflection = new \ReflectionMethod($model, $method); // methods that resemble mutators but aren't.
$reflections = array_filter($reflections, function (\ReflectionMethod $methodReflection) {
return !$methodReflection->isPrivate() && !(
$methodReflection->getDeclaringClass()->getName() === Model::class && (
$methodReflection->getName() === 'setClassCastableAttribute' ||
$methodReflection->getName() === 'setEnumCastableAttribute'
)
);
});
sort($reflections);
foreach ($reflections as $reflection) {
$type = $this->getReturnTypeFromReflection($reflection); $type = $this->getReturnTypeFromReflection($reflection);
$isAttribute = is_a($type, '\Illuminate\Database\Eloquent\Casts\Attribute', true); $isAttribute = is_a($type, '\Illuminate\Database\Eloquent\Casts\Attribute', true);
$method = $reflection->getName();
if ( if (
Str::startsWith($method, 'get') && Str::endsWith( Str::startsWith($method, 'get') && Str::endsWith($method, 'Attribute') && $method !== 'getAttribute'
$method,
'Attribute'
) && $method !== 'getAttribute'
) { ) {
//Magic get<name>Attribute //Magic get<name>Attribute
$name = Str::snake(substr($method, 3, -9)); $name = Str::snake(substr($method, 3, -9));
@@ -591,24 +596,19 @@ class ModelsCommand extends Command
$this->setProperty($name, $type, true, null, $comment); $this->setProperty($name, $type, true, null, $comment);
} }
} elseif ($isAttribute) { } elseif ($isAttribute) {
$name = Str::snake($method); $types = $this->getAttributeTypes($model, $reflection);
$types = $this->getAttributeReturnType($model, $method); $type = $this->getTypeInModel($model, $types->get('get') ?: $types->get('set')) ?: null;
$this->setProperty(
if ($types->has('get')) { Str::snake($method),
$type = $this->getTypeInModel($model, $types['get']); $type,
$comment = $this->getCommentFromDocBlock($reflection); $types->has('get') ?: null,
$this->setProperty($name, $type, true, null, $comment); $types->has('set') ?: null,
} $this->getCommentFromDocBlock($reflection)
);
if ($types->has('set')) {
$comment = $this->getCommentFromDocBlock($reflection);
$this->setProperty($name, null, null, true, $comment);
}
} elseif ( } elseif (
Str::startsWith($method, 'set') && Str::endsWith( Str::startsWith($method, 'set') &&
$method, Str::endsWith($method, 'Attribute') &&
'Attribute' $method !== 'setAttribute'
) && $method !== 'setAttribute'
) { ) {
//Magic set<name>Attribute //Magic set<name>Attribute
$name = Str::snake(substr($method, 3, -9)); $name = Str::snake(substr($method, 3, -9));
@@ -616,8 +616,8 @@ class ModelsCommand extends Command
$comment = $this->getCommentFromDocBlock($reflection); $comment = $this->getCommentFromDocBlock($reflection);
$this->setProperty($name, null, null, true, $comment); $this->setProperty($name, null, null, true, $comment);
} }
} elseif (Str::startsWith($method, 'scope') && $method !== 'scopeQuery') { } elseif (Str::startsWith($method, 'scope') && $method !== 'scopeQuery' && $method !== 'scope' && $method !== 'scopes') {
//Magic set<name>Attribute //Magic scope<name>Attribute
$name = Str::camel(substr($method, 5)); $name = Str::camel(substr($method, 5));
if (!empty($name)) { if (!empty($name)) {
$comment = $this->getCommentFromDocBlock($reflection); $comment = $this->getCommentFromDocBlock($reflection);
@@ -629,17 +629,17 @@ class ModelsCommand extends Command
get_class($model->newModelQuery()) get_class($model->newModelQuery())
); );
$modelName = $this->getClassNameInDestinationFile( $modelName = $this->getClassNameInDestinationFile(
$reflection->getDeclaringClass(), new ReflectionClass($model),
$reflection->getDeclaringClass()->getName() get_class($model)
); );
$this->setMethod($name, $builder . '|' . $modelName, $args, $comment); $this->setMethod($name, $builder . '<static>|' . $modelName, $args, $comment);
} }
} elseif (in_array($method, ['query', 'newQuery', 'newModelQuery'])) { } elseif (in_array($method, ['query', 'newQuery', 'newModelQuery'])) {
$builder = $this->getClassNameInDestinationFile($model, get_class($model->newModelQuery())); $builder = $this->getClassNameInDestinationFile($model, get_class($model->newModelQuery()));
$this->setMethod( $this->setMethod(
$method, $method,
$builder . '|' . $this->getClassNameInDestinationFile($model, get_class($model)) $builder . '<static>|' . $this->getClassNameInDestinationFile($model, get_class($model))
); );
if ($this->write_model_external_builder_methods) { if ($this->write_model_external_builder_methods) {
@@ -677,8 +677,7 @@ class ModelsCommand extends Command
$search = '$this->' . $relation . '('; $search = '$this->' . $relation . '(';
if (stripos($code, $search) || ltrim($impl, '\\') === ltrim((string)$type, '\\')) { if (stripos($code, $search) || ltrim($impl, '\\') === ltrim((string)$type, '\\')) {
//Resolve the relation's model to a Relation object. //Resolve the relation's model to a Relation object.
$methodReflection = new \ReflectionMethod($model, $method); if ($reflection->getNumberOfParameters()) {
if ($methodReflection->getNumberOfParameters()) {
continue; continue;
} }
@@ -686,11 +685,12 @@ class ModelsCommand extends Command
// Adding constraints requires reading model properties which // Adding constraints requires reading model properties which
// can cause errors. Since we don't need constraints we can // can cause errors. Since we don't need constraints we can
// disable them when we fetch the relation to avoid errors. // disable them when we fetch the relation to avoid errors.
$relationObj = Relation::noConstraints(function () use ($model, $method) { $relationObj = Relation::noConstraints(function () use ($model, $reflection) {
try { try {
return $model->$method(); $methodName = $reflection->getName();
return $model->$methodName();
} catch (Throwable $e) { } catch (Throwable $e) {
$this->warn(sprintf('Error resolving relation model of %s:%s() : %s', get_class($model), $method, $e->getMessage())); $this->warn(sprintf('Error resolving relation model of %s:%s() : %s', get_class($model), $reflection->getName(), $e->getMessage()));
return null; return null;
} }
@@ -702,10 +702,26 @@ class ModelsCommand extends Command
get_class($relationObj->getRelated()) get_class($relationObj->getRelated())
); );
$relationReturnType = $this->getRelationReturnTypes()[$relation] ?? false;
if ( if (
strpos(get_class($relationObj), 'Many') !== false || $relationReturnType === 'many' ||
($this->getRelationReturnTypes()[$relation] ?? '') === 'many' (
!$relationReturnType &&
strpos(get_class($relationObj), 'Many') !== false
)
) { ) {
if ($relationObj instanceof BelongsToMany) {
$pivot = get_class($relationObj->newPivot());
if (!in_array($pivot, [Pivot::class, MorphPivot::class])) {
$this->setProperty(
$relationObj->getPivotAccessor(),
$this->getClassNameInDestinationFile($model, $pivot),
true,
false
);
}
}
//Collection or array of models (because Collection is Arrayable) //Collection or array of models (because Collection is Arrayable)
$relatedClass = '\\' . get_class($relationObj->getRelated()); $relatedClass = '\\' . get_class($relationObj->getRelated());
$collectionClass = $this->getCollectionClass($relatedClass); $collectionClass = $this->getCollectionClass($relatedClass);
@@ -727,12 +743,15 @@ class ModelsCommand extends Command
'int|null', 'int|null',
true, true,
false false
// What kind of comments should be added to the relation count here? // What kind of comments should be added to the relation count here?
); );
} }
} elseif ( } elseif (
$relation === 'morphTo' || $relationReturnType === 'morphTo' ||
($this->getRelationReturnTypes()[$relation] ?? '') === 'morphTo' (
!$relationReturnType &&
$relation === 'morphTo'
)
) { ) {
// Model isn't specified because relation is polymorphic // Model isn't specified because relation is polymorphic
$this->setProperty( $this->setProperty(
@@ -740,7 +759,8 @@ class ModelsCommand extends Command
$this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent', $this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent',
true, true,
null, null,
$comment $comment,
$this->isMorphToRelationNullable($relationObj)
); );
} else { } else {
//Single model is returned //Single model is returned
@@ -787,12 +807,44 @@ class ModelsCommand extends Command
$fkProp = $reflectionObj->getProperty('foreignKey'); $fkProp = $reflectionObj->getProperty('foreignKey');
$fkProp->setAccessible(true); $fkProp->setAccessible(true);
if ($relation === 'belongsTo') { foreach (Arr::wrap($fkProp->getValue($relationObj)) as $foreignKey) {
return isset($this->nullableColumns[$fkProp->getValue($relationObj)]) || if (isset($this->nullableColumns[$foreignKey])) {
!in_array($fkProp->getValue($relationObj), $this->foreignKeyConstraintsColumns, true); return true;
}
if (!in_array($foreignKey, $this->foreignKeyConstraintsColumns, true)) {
return true;
}
} }
return isset($this->nullableColumns[$fkProp->getValue($relationObj)]); return false;
}
/**
* Check if the morphTo relation is nullable
*
* @param Relation $relationObj
*
* @return bool
*/
protected function isMorphToRelationNullable(Relation $relationObj): bool
{
$reflectionObj = new ReflectionObject($relationObj);
if (!$reflectionObj->hasProperty('foreignKey')) {
return false;
}
$fkProp = $reflectionObj->getProperty('foreignKey');
$fkProp->setAccessible(true);
foreach (Arr::wrap($fkProp->getValue($relationObj)) as $foreignKey) {
if (isset($this->nullableColumns[$foreignKey])) {
return true;
}
}
return false;
} }
/** /**
@@ -841,14 +893,19 @@ class ModelsCommand extends Command
public function unsetMethod($name) public function unsetMethod($name)
{ {
unset($this->methods[strtolower($name)]); foreach ($this->methods as $k => $v) {
if (strtolower($k) === strtolower($name)) {
unset($this->methods[$k]);
return;
}
}
} }
public function getMethodType(Model $model, string $classType) public function getMethodType(Model $model, string $classType)
{ {
$modelName = $this->getClassNameInDestinationFile($model, get_class($model)); $modelName = $this->getClassNameInDestinationFile($model, get_class($model));
$builder = $this->getClassNameInDestinationFile($model, $classType); $builder = $this->getClassNameInDestinationFile($model, $classType);
return $builder . '|' . $modelName; return $builder . '<static>|' . $modelName;
} }
/** /**
@@ -869,19 +926,13 @@ class ModelsCommand extends Command
if ($this->reset) { if ($this->reset) {
$phpdoc = new DocBlock('', new Context($namespace)); $phpdoc = new DocBlock('', new Context($namespace));
if ($this->keep_text) { $phpdoc->setText(
$phpdoc->setText( (new DocBlock($reflection, new Context($namespace)))->getText()
(new DocBlock($reflection, new Context($namespace)))->getText() );
);
}
} else { } else {
$phpdoc = new DocBlock($reflection, new Context($namespace)); $phpdoc = new DocBlock($reflection, new Context($namespace));
} }
if (!$phpdoc->getText()) {
$phpdoc->setText($class);
}
$properties = []; $properties = [];
$methods = []; $methods = [];
foreach ($phpdoc->getTags() as $tag) { foreach ($phpdoc->getTags() as $tag) {
@@ -1006,7 +1057,9 @@ class ModelsCommand extends Command
} }
$classname = $this->write_mixin ? $mixinClassName : $classname; $classname = $this->write_mixin ? $mixinClassName : $classname;
$output = "namespace {$namespace}{\n{$docComment}\n\t{$keyword}class {$classname} ";
$allowDynamicAttributes = $this->write_mixin ? "#[\AllowDynamicProperties]\n\t" : '';
$output = "namespace {$namespace}{\n{$docComment}\n\t{$allowDynamicAttributes}{$keyword}class {$classname} ";
if (!$this->write_mixin) { if (!$this->write_mixin) {
$output .= "extends \Eloquent "; $output .= "extends \Eloquent ";
@@ -1049,6 +1102,8 @@ class ModelsCommand extends Command
$default = 'null'; $default = 'null';
} elseif (is_int($default)) { } elseif (is_int($default)) {
//$default = $default; //$default = $default;
} elseif ($default instanceof \UnitEnum) {
$default = '\\' . get_class($default) . '::' . $default->name;
} else { } else {
$default = "'" . trim($default) . "'"; $default = "'" . trim($default) . "'";
} }
@@ -1076,7 +1131,7 @@ class ModelsCommand extends Command
return '\Illuminate\Database\Eloquent\Collection'; return '\Illuminate\Database\Eloquent\Collection';
} }
/** @var \Illuminate\Database\Eloquent\Model $model */ /** @var Model $model */
$model = new $className(); $model = new $className();
return '\\' . get_class($model->newCollection()); return '\\' . get_class($model->newCollection());
} }
@@ -1123,19 +1178,37 @@ class ModelsCommand extends Command
return $this->laravel['config']->get('ide-helper.model_camel_case_properties', false); return $this->laravel['config']->get('ide-helper.model_camel_case_properties', false);
} }
protected function getAttributeReturnType(Model $model, string $method): Collection /**
* @psalm-suppress NoValue
*/
protected function getAttributeTypes(Model $model, \ReflectionMethod $reflectionMethod): Collection
{ {
/** @var Attribute $attribute */ // Private/protected ReflectionMethods require setAccessible prior to PHP 8.1
$attribute = $model->{$method}(); $reflectionMethod->setAccessible(true);
return collect([ /** @var Attribute $attribute */
'get' => $attribute->get ? optional(new \ReflectionFunction($attribute->get))->getReturnType() : null, $attribute = $reflectionMethod->invoke($model);
'set' => $attribute->set ? optional(new \ReflectionFunction($attribute->set))->getReturnType() : null,
]) $methods = new Collection();
->filter()
if ($attribute->get) {
$methods['get'] = optional(new \ReflectionFunction($attribute->get))->getReturnType();
}
if ($attribute->set) {
$function = optional(new \ReflectionFunction($attribute->set));
if ($function->getNumberOfParameters() === 0) {
$methods['set'] = null;
} else {
$methods['set'] = $function->getParameters()[0]->getType();
}
}
return $methods
->map(function ($type) { ->map(function ($type) {
if ($type instanceof \ReflectionUnionType) { if ($type === null) {
$types =collect($type->getTypes()) $types = collect([]);
} elseif ($type instanceof \ReflectionUnionType) {
$types = collect($type->getTypes())
/** @var ReflectionType $reflectionType */ /** @var ReflectionType $reflectionType */
->map(function ($reflectionType) { ->map(function ($reflectionType) {
return collect($this->extractReflectionTypes($reflectionType)); return collect($this->extractReflectionTypes($reflectionType));
@@ -1145,7 +1218,7 @@ class ModelsCommand extends Command
$types = collect($this->extractReflectionTypes($type)); $types = collect($this->extractReflectionTypes($type));
} }
if ($type->allowsNull()) { if ($type && $type->allowsNull()) {
$types->push('null'); $types->push('null');
} }
@@ -1205,6 +1278,13 @@ class ModelsCommand extends Command
$phpdoc = new DocBlock($reflection, $context); $phpdoc = new DocBlock($reflection, $context);
if ($phpdoc->hasTag('return')) { if ($phpdoc->hasTag('return')) {
$returnTag = $phpdoc->getTagsByName('return')[0];
$typeParser = new PhpDocReturnTypeParser($returnTag->getContent(), $context->getNamespaceAliases());
if ($typeAlias = $typeParser->parse()) {
return $typeAlias;
}
$type = $phpdoc->getTagsByName('return')[0]->getType(); $type = $phpdoc->getTagsByName('return')[0]->getType();
} }
@@ -1223,7 +1303,7 @@ class ModelsCommand extends Command
$type = implode('|', $types); $type = implode('|', $types);
if ($returnType->allowsNull()) { if ($returnType->allowsNull()) {
$type .='|null'; $type .= '|null';
} }
return $type; return $type;
@@ -1232,7 +1312,7 @@ class ModelsCommand extends Command
/** /**
* Generates methods provided by the SoftDeletes trait * Generates methods provided by the SoftDeletes trait
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
*/ */
protected function getSoftDeleteMethods($model) protected function getSoftDeleteMethods($model)
{ {
@@ -1240,16 +1320,16 @@ class ModelsCommand extends Command
if (in_array('Illuminate\\Database\\Eloquent\\SoftDeletes', $traits)) { if (in_array('Illuminate\\Database\\Eloquent\\SoftDeletes', $traits)) {
$modelName = $this->getClassNameInDestinationFile($model, get_class($model)); $modelName = $this->getClassNameInDestinationFile($model, get_class($model));
$builder = $this->getClassNameInDestinationFile($model, \Illuminate\Database\Eloquent\Builder::class); $builder = $this->getClassNameInDestinationFile($model, \Illuminate\Database\Eloquent\Builder::class);
$this->setMethod('withTrashed', $builder . '|' . $modelName, []); $this->setMethod('withTrashed', $builder . '<static>|' . $modelName, []);
$this->setMethod('withoutTrashed', $builder . '|' . $modelName, []); $this->setMethod('withoutTrashed', $builder . '<static>|' . $modelName, []);
$this->setMethod('onlyTrashed', $builder . '|' . $modelName, []); $this->setMethod('onlyTrashed', $builder . '<static>|' . $modelName, []);
} }
} }
/** /**
* Generate factory method from "HasFactory" trait. * Generate factory method from "HasFactory" trait.
* *
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
*/ */
protected function getFactoryMethods($model) protected function getFactoryMethods($model)
{ {
@@ -1277,16 +1357,12 @@ class ModelsCommand extends Command
return; return;
} }
if (version_compare($this->laravel->version(), '9', '>=')) { $this->setMethod('factory', $factory, ['$count = null, $state = []']);
$this->setMethod('factory', $factory, ['$count = null, $state = []']);
} else {
$this->setMethod('factory', $factory, ['...$parameters']);
}
} }
/** /**
* Generates methods that return collections * Generates methods that return collections
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
*/ */
protected function getCollectionMethods($model) protected function getCollectionMethods($model)
{ {
@@ -1329,7 +1405,7 @@ class ModelsCommand extends Command
return $type; return $type;
} }
$reflection = new \ReflectionClass($type); $reflection = new ReflectionClass($type);
if (!$reflection->implementsInterface(Castable::class)) { if (!$reflection->implementsInterface(Castable::class)) {
return $type; return $type;
@@ -1361,7 +1437,7 @@ class ModelsCommand extends Command
return $type; return $type;
} }
$reflection = new \ReflectionClass($type); $reflection = new ReflectionClass($type);
if (!$reflection->implementsInterface(CastsAttributes::class)) { if (!$reflection->implementsInterface(CastsAttributes::class)) {
return $type; return $type;
@@ -1399,8 +1475,7 @@ class ModelsCommand extends Command
{ {
$reflection = $model instanceof ReflectionClass $reflection = $model instanceof ReflectionClass
? $model ? $model
: new ReflectionObject($model) : new ReflectionObject($model);
;
$className = trim($className, '\\'); $className = trim($className, '\\');
$writingToExternalFile = !$this->write || $this->write_mixin; $writingToExternalFile = !$this->write || $this->write_mixin;
@@ -1451,7 +1526,7 @@ class ModelsCommand extends Command
$this->setMethod( $this->setMethod(
$builderMethod, $builderMethod,
$builderClassBasedOnFQCNOption . '|' . $this->getClassNameInDestinationFile($model, get_class($model)), $builderClassBasedOnFQCNOption . '<static>|' . $this->getClassNameInDestinationFile($model, get_class($model)),
$args $args
); );
} }
@@ -1465,10 +1540,10 @@ class ModelsCommand extends Command
$type = implode('|', $types); $type = implode('|', $types);
if ($paramType->allowsNull()) { if ($paramType->allowsNull()) {
if (count($types)==1) { if (count($types) == 1) {
$type = '?' . $type; $type = '?' . $type;
} else { } else {
$type .='|null'; $type .= '|null';
} }
} }
@@ -1545,7 +1620,7 @@ class ModelsCommand extends Command
} else { } else {
$types = []; $types = [];
foreach ($reflection_type->getTypes() as $named_type) { foreach ($reflection_type->getTypes() as $named_type) {
if ($named_type->getName()==='null') { if ($named_type->getName() === 'null') {
continue; continue;
} }
@@ -1559,7 +1634,7 @@ class ModelsCommand extends Command
protected function getReflectionNamedType(ReflectionNamedType $paramType): string protected function getReflectionNamedType(ReflectionNamedType $paramType): string
{ {
$parameterName = $paramType->getName(); $parameterName = $paramType->getName();
if (!$paramType->isBuiltin()) { if (!$paramType->isBuiltin() && $paramType->getName() !== 'static') {
$parameterName = '\\' . $parameterName; $parameterName = '\\' . $parameterName;
} }
@@ -1567,7 +1642,7 @@ class ModelsCommand extends Command
} }
/** /**
* @param \Illuminate\Database\Eloquent\Model $model * @param Model $model
* @throws \Illuminate\Contracts\Container\BindingResolutionException * @throws \Illuminate\Contracts\Container\BindingResolutionException
* @throws \RuntimeException * @throws \RuntimeException
*/ */
@@ -1589,14 +1664,13 @@ class ModelsCommand extends Command
} }
/** /**
* @param \Doctrine\DBAL\Schema\AbstractSchemaManager $schema * @param Builder $schema
* @param string $table * @param string $table
* @throws DBALException
*/ */
protected function setForeignKeys($schema, $table) protected function setForeignKeys($schema, $table)
{ {
foreach ($schema->listTableForeignKeys($table) as $foreignKeyConstraint) { foreach ($schema->getForeignKeys($table) as $foreignKeyConstraint) {
foreach ($foreignKeyConstraint->getLocalColumns() as $columnName) { foreach ($foreignKeyConstraint['columns'] as $columnName) {
$this->foreignKeyConstraintsColumns[] = $columnName; $this->foreignKeyConstraintsColumns[] = $columnName;
} }
} }
+61 -12
View File
@@ -13,8 +13,13 @@ namespace Barryvdh\LaravelIdeHelper;
use Illuminate\Foundation\AliasLoader; use Illuminate\Foundation\AliasLoader;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Facade;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Illuminate\Support\Traits\Macroable; use Illuminate\Support\Traits\Macroable;
use PhpParser\Lexer\Emulative;
use PhpParser\Node\Stmt\Class_;
use PhpParser\Node\Stmt\Namespace_;
use PhpParser\Parser\Php7;
use ReflectionClass; use ReflectionClass;
use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Output\OutputInterface;
@@ -26,7 +31,7 @@ class Generator
/** @var \Illuminate\View\Factory */ /** @var \Illuminate\View\Factory */
protected $view; protected $view;
/** @var \Symfony\Component\Console\Output\OutputInterface */ /** @var OutputInterface */
protected $output; protected $output;
protected $extra = []; protected $extra = [];
@@ -37,7 +42,7 @@ class Generator
/** /**
* @param \Illuminate\Config\Repository $config * @param \Illuminate\Config\Repository $config
* @param \Illuminate\View\Factory $view * @param \Illuminate\View\Factory $view
* @param \Symfony\Component\Console\Output\OutputInterface $output * @param OutputInterface $output
* @param string $helpers * @param string $helpers
*/ */
public function __construct( public function __construct(
@@ -75,6 +80,7 @@ class Generator
return $this->view->make('helper') return $this->view->make('helper')
->with('namespaces_by_extends_ns', $this->getAliasesByExtendsNamespace()) ->with('namespaces_by_extends_ns', $this->getAliasesByExtendsNamespace())
->with('namespaces_by_alias_ns', $this->getAliasesByAliasNamespace()) ->with('namespaces_by_alias_ns', $this->getAliasesByAliasNamespace())
->with('real_time_facades', $this->getRealTimeFacades())
->with('helpers', $this->helpers) ->with('helpers', $this->helpers)
->with('version', $app->version()) ->with('version', $app->version())
->with('include_fluent', $this->config->get('ide-helper.include_fluent', true)) ->with('include_fluent', $this->config->get('ide-helper.include_fluent', true))
@@ -127,15 +133,6 @@ class Generator
} catch (\Exception $e) { } catch (\Exception $e) {
} }
try {
if (class_exists('SSH') && is_a('SSH', '\Illuminate\Support\Facades\SSH', true)) {
$class = get_class(\SSH::connection());
$this->extra['SSH'] = [$class];
$this->interfaces['\Illuminate\Remote\ConnectionInterface'] = $class;
}
} catch (\Exception $e) {
}
try { try {
if (class_exists('Storage') && is_a('Storage', '\Illuminate\Support\Facades\Storage', true)) { if (class_exists('Storage') && is_a('Storage', '\Illuminate\Support\Facades\Storage', true)) {
$class = get_class(\Storage::disk()); $class = get_class(\Storage::disk());
@@ -162,6 +159,11 @@ class Generator
continue; continue;
} }
// Skip the swoole
if ($facade == 'SwooleTW\Http\Server\Facades\Server' && $name == 'Server' && !class_exists('Swoole\Http\Server')) {
continue;
}
$magicMethods = array_key_exists($name, $this->magic) ? $this->magic[$name] : []; $magicMethods = array_key_exists($name, $this->magic) ? $this->magic[$name] : [];
$alias = new Alias($this->config, $name, $facade, $magicMethods, $this->interfaces); $alias = new Alias($this->config, $name, $facade, $magicMethods, $this->interfaces);
if ($alias->isValid()) { if ($alias->isValid()) {
@@ -177,6 +179,51 @@ class Generator
return $aliases; return $aliases;
} }
protected function getRealTimeFacades()
{
$facades = [];
$realTimeFacadeFiles = glob(storage_path('framework/cache/facade-*.php'));
foreach ($realTimeFacadeFiles as $file) {
try {
$name = $this->getFullyQualifiedClassNameInFile($file);
$facades[$name] = $name;
} catch (\Exception $e) {
continue;
}
}
return $facades;
}
protected function getFullyQualifiedClassNameInFile(string $path)
{
$contents = file_get_contents($path);
$parsers = new Php7(new Emulative());
$parsed = collect($parsers->parse($contents) ?: []);
$namespace = $parsed->first(function ($node) {
return $node instanceof Namespace_;
});
if ($namespace) {
$name = $namespace->name->toString();
$class = collect($namespace->stmts)->first(function ($node) {
return $node instanceof Class_;
});
if ($class) {
$name .= '\\' . $class->name->toString();
}
return $name;
}
}
/** /**
* Regroup aliases by namespace of extended classes * Regroup aliases by namespace of extended classes
* *
@@ -184,7 +231,9 @@ class Generator
*/ */
protected function getAliasesByExtendsNamespace() protected function getAliasesByExtendsNamespace()
{ {
$aliases = $this->getValidAliases(); $aliases = $this->getValidAliases()->filter(static function (Alias $alias) {
return is_subclass_of($alias->getExtends(), Facade::class);
});
$this->addMacroableClasses($aliases); $this->addMacroableClasses($aliases);
+4 -4
View File
@@ -16,15 +16,15 @@ class GenerateModelHelper
*/ */
public static $shouldRun = false; public static $shouldRun = false;
/** @var \Illuminate\Contracts\Console\Kernel */ /** @var Artisan */
protected $artisan; protected $artisan;
/** @var \Illuminate\Contracts\Config\Repository */ /** @var Config */
protected $config; protected $config;
/** /**
* @param \Illuminate\Contracts\Console\Kernel $artisan * @param Artisan $artisan
* @param \Illuminate\Contracts\Config\Repository $config * @param Config $config
*/ */
public function __construct(Artisan $artisan, Config $config) public function __construct(Artisan $artisan, Config $config)
{ {
+1 -1
View File
@@ -22,7 +22,7 @@ use Illuminate\Support\Str;
class Method class Method
{ {
/** @var \Barryvdh\Reflection\DocBlock */ /** @var DocBlock */
protected $phpdoc; protected $phpdoc;
/** @var \ReflectionMethod */ /** @var \ReflectionMethod */
+79
View File
@@ -0,0 +1,79 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Parsers;
class PhpDocReturnTypeParser
{
/**
* @var string
*/
private string $typeAlias;
/**
* @var array
*/
private array $namespaceAliases;
/**
* @param string $typeAlias
* @param array $namespaceAliases
*/
public function __construct(string $typeAlias, array $namespaceAliases)
{
$this->typeAlias = $typeAlias;
$this->namespaceAliases = $namespaceAliases;
}
/**
* @return string|null
*/
public function parse(): string|null
{
$matches = [];
preg_match('/(\w+)(<.*>)/', $this->typeAlias, $matches);
$matchCount = count($matches);
if ($matchCount === 0 || $matchCount === 1) {
return null;
}
if (empty($this->namespaceAliases[$matches[1]])) {
return null;
}
return $this->namespaceAliases[$matches[1]] . $this->parseTemplate($matches[2] ?? null);
}
/**
* @param string|null $template
* @return string
*/
private function parseTemplate(string|null $template): string
{
if ($template === null || $template === '') {
return '';
}
$type = '';
$result = '';
foreach (str_split($template) as $char) {
$match = preg_match('/[A-z]/', $char);
if (!$match) {
$type = $this->namespaceAliases[$type] ?? $type;
$result .= $type;
$result .= $char;
$type = '';
continue;
}
$type .= $char;
}
return $result;
}
}
+1 -1
View File
@@ -64,7 +64,7 @@ class UsesResolver
'\\' '\\'
); );
$parser = (new ParserFactory())->create(ParserFactory::PREFER_PHP7); $parser = (new ParserFactory())->createForHostVersion();
$namespaceData = null; $namespaceData = null;
foreach ($parser->parse($code) as $node) { foreach ($parser->parse($code) as $node) {
@@ -0,0 +1,31 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AdvancedCasts\Models;
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
use Illuminate\Database\Eloquent\Casts\AsCollection;
use Illuminate\Database\Eloquent\Casts\AsEnumCollection;
use Illuminate\Database\Eloquent\Model;
class AdvancedCast extends Model
{
protected $casts = [
'cast_to_date_serialization' => 'date:Y-m-d',
'cast_to_datetime_serialization' => 'datetime:Y-m-d H:i:s',
'cast_to_custom_datetime' => 'custom_datetime:Y-m-d H:i:s',
'cast_to_immutable_date' => 'immutable_date',
'cast_to_immutable_custom_datetime' => 'immutable_custom_datetime:Y-m-d H:i:s',
'cast_to_immutable_datetime' => 'immutable_datetime',
'cast_to_timestamp' => 'timestamp',
'cast_to_encrypted' => 'encrypted',
'cast_to_encrypted_array' => 'encrypted:array',
'cast_to_encrypted_collection' => 'encrypted:collection',
'cast_to_encrypted_json' => 'encrypted:json',
'cast_to_encrypted_object' => 'encrypted:object',
'cast_to_as_collection' => AsCollection::class,
'cast_to_as_enum_collection' => AsEnumCollection::class,
'cast_to_as_array_object' => AsArrayObject::class,
];
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AdvancedCasts;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,69 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AdvancedCasts\Models;
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
use Illuminate\Database\Eloquent\Casts\AsCollection;
use Illuminate\Database\Eloquent\Casts\AsEnumCollection;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @property \Illuminate\Support\Carbon $cast_to_date_serialization
* @property \Illuminate\Support\Carbon $cast_to_datetime_serialization
* @property \Illuminate\Support\Carbon $cast_to_custom_datetime
* @property \Carbon\CarbonImmutable $cast_to_immutable_date
* @property \Carbon\CarbonImmutable $cast_to_immutable_custom_datetime
* @property \Carbon\CarbonImmutable $cast_to_immutable_datetime
* @property int $cast_to_timestamp
* @property mixed $cast_to_encrypted
* @property array $cast_to_encrypted_array
* @property \Illuminate\Support\Collection $cast_to_encrypted_collection
* @property array $cast_to_encrypted_json
* @property object $cast_to_encrypted_object
* @property \Illuminate\Support\Collection $cast_to_as_collection
* @property \Illuminate\Support\Collection $cast_to_as_enum_collection
* @property \ArrayObject $cast_to_as_array_object
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToAsArrayObject($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToAsCollection($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToAsEnumCollection($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToCustomDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToDateSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToDatetimeSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToEncryptedArray($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToEncryptedCollection($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToEncryptedJson($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToEncryptedObject($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToImmutableCustomDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToImmutableDate($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToImmutableDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|AdvancedCast whereCastToTimestamp($value)
* @mixin \Eloquent
*/
class AdvancedCast extends Model
{
protected $casts = [
'cast_to_date_serialization' => 'date:Y-m-d',
'cast_to_datetime_serialization' => 'datetime:Y-m-d H:i:s',
'cast_to_custom_datetime' => 'custom_datetime:Y-m-d H:i:s',
'cast_to_immutable_date' => 'immutable_date',
'cast_to_immutable_custom_datetime' => 'immutable_custom_datetime:Y-m-d H:i:s',
'cast_to_immutable_datetime' => 'immutable_datetime',
'cast_to_timestamp' => 'timestamp',
'cast_to_encrypted' => 'encrypted',
'cast_to_encrypted_array' => 'encrypted:array',
'cast_to_encrypted_collection' => 'encrypted:collection',
'cast_to_encrypted_json' => 'encrypted:json',
'cast_to_encrypted_object' => 'encrypted:object',
'cast_to_as_collection' => AsCollection::class,
'cast_to_as_enum_collection' => AsEnumCollection::class,
'cast_to_as_array_object' => AsArrayObject::class,
];
}
@@ -7,9 +7,9 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AllowGlobDirecto
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AllowGlobDirectory\Services\Post\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -20,36 +20,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -70,10 +68,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -82,82 +80,80 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -0,0 +1,43 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\ArrayCastsWithComment\Models;
use Illuminate\Database\Eloquent\Model;
/**
* @property array<int, string>|null $cast_to_array -- These three should not be duplicated
* @property array<int, string> $cast_to_json some-description
* @property \Illuminate\Support\Collection<int, string> $cast_to_collection some-description
*
* @property array|null $cast_to_encrypted_array -- These three are OK (no types)
* @property array $cast_to_encrypted_json some-description
* @property \Illuminate\Support\Collection $cast_to_encrypted_collection some-description
*
* @property string $cast_to_string -- The next three are OK (no description), this not included
*
* @property array<int, string>|null $cast_to_immutable_date
* @property array<int, string> $cast_to_immutable_date_serialization
* @property \Illuminate\Support\Collection<int, string> $cast_to_immutable_custom_datetime
*/
class ArrayCastsWithComment extends Model
{
protected $table = 'simple_casts';
protected $casts = [
'cast_to_array' => 'array',
'cast_to_json' => 'json',
'cast_to_collection' => 'collection',
'cast_to_encrypted_array' => 'array',
'cast_to_encrypted_json' => 'json',
'cast_to_encrypted_collection' => 'collection',
'cast_to_string' => 'string',
'cast_to_immutable_date' => 'array',
'cast_to_immutable_date_serialization' => 'json',
'cast_to_immutable_custom_datetime' => 'collection',
];
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\ArrayCastsWithComment;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,94 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\ArrayCastsWithComment\Models;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @property array<int, string>|null $cast_to_array -- These three should not be duplicated
* @property array<int, string> $cast_to_json some-description
* @property \Illuminate\Support\Collection<int, string> $cast_to_collection some-description
* @property array|null $cast_to_encrypted_array -- These three are OK (no types)
* @property array $cast_to_encrypted_json some-description
* @property \Illuminate\Support\Collection $cast_to_encrypted_collection some-description
* @property string $cast_to_string -- The next three are OK (no description), this not included
* @property array<int, string>|null $cast_to_immutable_date
* @property array<int, string> $cast_to_immutable_date_serialization
* @property \Illuminate\Support\Collection<int, string> $cast_to_immutable_custom_datetime
* @property string $cast_to_int
* @property string $cast_to_integer
* @property string $cast_to_real
* @property string $cast_to_float
* @property string $cast_to_double
* @property string $cast_to_decimal
* @property string $cast_to_bool
* @property string $cast_to_boolean
* @property string $cast_to_object
* @property string $cast_to_date
* @property string $cast_to_datetime
* @property string $cast_to_date_serialization
* @property string $cast_to_datetime_serialization
* @property string $cast_to_custom_datetime
* @property string $cast_to_immutable_datetime
* @property string $cast_to_immutable_datetime_serialization
* @property string $cast_to_timestamp
* @property string $cast_to_encrypted
* @property string $cast_to_encrypted_object
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToArray($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToBool($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToBoolean($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToCollection($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToCustomDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDate($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDateSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDatetimeSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDecimal($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToDouble($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToEncryptedArray($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToEncryptedCollection($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToEncryptedJson($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToEncryptedObject($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToFloat($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToImmutableCustomDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToImmutableDate($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToImmutableDateSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToImmutableDatetime($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToImmutableDatetimeSerialization($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToInt($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToInteger($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToJson($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToObject($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToReal($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToString($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|ArrayCastsWithComment whereCastToTimestamp($value)
* @mixin \Eloquent
*/
class ArrayCastsWithComment extends Model
{
protected $table = 'simple_casts';
protected $casts = [
'cast_to_array' => 'array',
'cast_to_json' => 'json',
'cast_to_collection' => 'collection',
'cast_to_encrypted_array' => 'array',
'cast_to_encrypted_json' => 'json',
'cast_to_encrypted_collection' => 'collection',
'cast_to_string' => 'string',
'cast_to_immutable_date' => 'array',
'cast_to_immutable_date_serialization' => 'json',
'cast_to_immutable_custom_datetime' => 'collection',
];
}
@@ -0,0 +1,59 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Attributes\Models;
use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model;
class BackedAttribute extends Model
{
protected function name(): Attribute
{
return new Attribute(
function (?string $name): ?string {
return $name;
},
function (?string $name): ?string {
return $name;
}
);
}
protected function nameRead(): Attribute
{
return new Attribute(
function (?string $name): ?string {
return $name;
},
);
}
protected function nameWrite(): Attribute
{
return new Attribute(
set: function (?string $name): ?string {
return $name;
},
);
}
protected function nonBackedSet(): Attribute
{
return new Attribute(
set: function (?string $name): ?string {
return $name;
},
);
}
protected function nonBackedGet(): Attribute
{
return new Attribute(
get: function (): ?string {
return 'test';
},
);
}
}
@@ -9,27 +9,101 @@ use Illuminate\Database\Eloquent\Model;
class Simple extends Model class Simple extends Model
{ {
public function name(): Attribute // With a backed property
protected function name(): Attribute
{ {
return new Attribute( return new Attribute(
function (?string $name): ?string { function (?string $name): ?string {
return $name; return $name;
}, },
function (?string $name): ?string { function (?string $name): ?string {
return $name === null ? null : ucfirst($name); return $name;
} }
); );
} }
// Without backed properties
protected function typeHintedGetAndSet(): Attribute
{
return new Attribute(
function (): ?string {
return $this->name;
},
function (?string $name) {
$this->name = $name;
}
);
}
protected function divergingTypeHintedGetAndSet(): Attribute
{
return new Attribute(
function (): int {
return strlen($this->name);
},
function (?string $name) {
$this->name = $name;
}
);
}
protected function typeHintedGet(): Attribute
{
return Attribute::get(function (): ?string {
return $this->name;
});
}
protected function typeHintedSet(): Attribute
{
return Attribute::set(function (?string $name) {
$this->name = $name;
});
}
protected function nonTypeHintedGetAndSet(): Attribute
{
return new Attribute(
function () {
return $this->name;
},
function ($name) {
$this->name = $name;
}
);
}
protected function nonTypeHintedGet(): Attribute
{
return Attribute::get(function () {
return $this->name;
});
}
protected function nonTypeHintedSet(): Attribute
{
return Attribute::set(function ($name) {
$this->name = $name;
});
}
protected function parameterlessSet(): Attribute
{
return Attribute::set(function () {
$this->name = null;
});
}
/** /**
* ide-helper does not recognize this method being an Attribute * ide-helper does not recognize this method being an Attribute
* because the method has no actual return type; * because the method has no actual return type;
* phpdoc is ignored here deliberately due to performance reasons and also * phpdoc is ignored here deliberately due to performance reasons and also
* isn't supported by Laravel itself. * isn't supported by Laravel itself.
* *
* @return \Illuminate\Database\Eloquent\Casts\Attribute * @return Attribute
*/ */
public function notAnAttribute() protected function notAnAttribute()
{ {
return new Attribute( return new Attribute(
function (?string $value): ?string { function (?string $value): ?string {
@@ -9,15 +9,6 @@ use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand class Test extends AbstractModelsCommand
{ {
protected function setUp(): void
{
parent::setUp();
if (!class_exists('\Illuminate\Database\Eloquent\Casts\Attribute')) {
$this->markTestSkipped('This test requires Laravel 8.77 or newer');
}
}
public function test(): void public function test(): void
{ {
$command = $this->app->make(ModelsCommand::class); $command = $this->app->make(ModelsCommand::class);
@@ -8,39 +8,198 @@ use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Attributes\Models\Simple *
* *
* @property integer $id * @property int $id
* @property string|null $name * @property string|null $name
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @property string|null $name_read
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @property string|null $name_write
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @property-read string|null $non_backed_get
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @property-write string|null $non_backed_set
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute whereNameRead($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|BackedAttribute whereNameWrite($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class BackedAttribute extends Model
{ {
public function name(): Attribute protected function name(): Attribute
{ {
return new Attribute( return new Attribute(
function (?string $name): ?string { function (?string $name): ?string {
return $name; return $name;
}, },
function (?string $name): ?string { function (?string $name): ?string {
return $name === null ? null : ucfirst($name); return $name;
} }
); );
} }
protected function nameRead(): Attribute
{
return new Attribute(
function (?string $name): ?string {
return $name;
},
);
}
protected function nameWrite(): Attribute
{
return new Attribute(
set: function (?string $name): ?string {
return $name;
},
);
}
protected function nonBackedSet(): Attribute
{
return new Attribute(
set: function (?string $name): ?string {
return $name;
},
);
}
protected function nonBackedGet(): Attribute
{
return new Attribute(
get: function (): ?string {
return 'test';
},
);
}
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Attributes\Models;
use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @property int $id
* @property int $diverging_type_hinted_get_and_set
* @property string|null $name
* @property-read mixed $non_type_hinted_get
* @property mixed $non_type_hinted_get_and_set
* @property-write mixed $non_type_hinted_set
* @property-write mixed $parameterless_set
* @property-read string|null $type_hinted_get
* @property string|null $type_hinted_get_and_set
* @property-write string|null $type_hinted_set
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent
*/
class Simple extends Model
{
// With a backed property
protected function name(): Attribute
{
return new Attribute(
function (?string $name): ?string {
return $name;
},
function (?string $name): ?string {
return $name;
}
);
}
// Without backed properties
protected function typeHintedGetAndSet(): Attribute
{
return new Attribute(
function (): ?string {
return $this->name;
},
function (?string $name) {
$this->name = $name;
}
);
}
protected function divergingTypeHintedGetAndSet(): Attribute
{
return new Attribute(
function (): int {
return strlen($this->name);
},
function (?string $name) {
$this->name = $name;
}
);
}
protected function typeHintedGet(): Attribute
{
return Attribute::get(function (): ?string {
return $this->name;
});
}
protected function typeHintedSet(): Attribute
{
return Attribute::set(function (?string $name) {
$this->name = $name;
});
}
protected function nonTypeHintedGetAndSet(): Attribute
{
return new Attribute(
function () {
return $this->name;
},
function ($name) {
$this->name = $name;
}
);
}
protected function nonTypeHintedGet(): Attribute
{
return Attribute::get(function () {
return $this->name;
});
}
protected function nonTypeHintedSet(): Attribute
{
return Attribute::set(function ($name) {
$this->name = $name;
});
}
protected function parameterlessSet(): Attribute
{
return Attribute::set(function () {
$this->name = null;
});
}
/** /**
* ide-helper does not recognize this method being an Attribute * ide-helper does not recognize this method being an Attribute
* because the method has no actual return type; * because the method has no actual return type;
* phpdoc is ignored here deliberately due to performance reasons and also * phpdoc is ignored here deliberately due to performance reasons and also
* isn't supported by Laravel itself. * isn't supported by Laravel itself.
* *
* @return \Illuminate\Database\Eloquent\Casts\Attribute * @return Attribute
*/ */
public function notAnAttribute() protected function notAnAttribute()
{ {
return new Attribute( return new Attribute(
function (?string $value): ?string { function (?string $value): ?string {
@@ -10,9 +10,9 @@ use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\Relations\MorphTo;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Comment\Models\Simple *
* *
* @property integer $id * @property int $id
* @property string $both_same_name I'm a getter * @property string $both_same_name I'm a getter
* @property string $both_without_getter_comment * @property string $both_without_getter_comment
* @property-read string $faker_comment * @property-read string $faker_comment
@@ -26,11 +26,11 @@ use Illuminate\Database\Eloquent\Relations\MorphTo;
* @property-read Simple|null $relationHasOne Others relations. * @property-read Simple|null $relationHasOne Others relations.
* @property-read Model|\Eloquent $relationMorphTo MorphTo relations. * @property-read Model|\Eloquent $relationMorphTo MorphTo relations.
* @property-write mixed $first_name Set the user's first name. * @property-write mixed $first_name Set the user's first name.
* @method static \Illuminate\Database\Eloquent\Builder|Simple active() Scope a query to only include active users. * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple active() Scope a query to only include active users.
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -9,17 +9,17 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomCollection\Models\Simple *
* *
* @property integer $id * @property int $id
* @property-read SimpleCollection<int, Simple> $relationHasMany * @property-read SimpleCollection<int, Simple> $relationHasMany
* @property-read int|null $relation_has_many_count * @property-read int|null $relation_has_many_count
* @method static SimpleCollection<int, static> all($columns = ['*']) * @method static SimpleCollection<int, static> all($columns = ['*'])
* @method static SimpleCollection<int, static> get($columns = ['*']) * @method static SimpleCollection<int, static> get($columns = ['*'])
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -7,15 +7,15 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomDate\Model
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomDate\Models\CustomDate *
* *
* @property \Carbon\CarbonImmutable|null $created_at * @property \Carbon\CarbonImmutable|null $created_at
* @property \Carbon\CarbonImmutable|null $updated_at * @property \Carbon\CarbonImmutable|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|CustomDate newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomDate newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|CustomDate newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomDate newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|CustomDate query() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomDate query()
* @method static \Illuminate\Database\Eloquent\Builder|CustomDate whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomDate whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomDate whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomDate whereUpdatedAt($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class CustomDate extends Model class CustomDate extends Model
@@ -0,0 +1,19 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomPhpdocTags\Models;
use Illuminate\Database\Eloquent\Model;
/**
* The `@SuppressWarnings` tag below contains no space before the `(` but when
* the class phpdoc is written back, one is inserted.
*
* @link https://github.com/barryvdh/laravel-ide-helper/issues/666
*
* @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
*/
class Simple extends Model
{
}
@@ -0,0 +1,30 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomPhpdocTags;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
/**
* This test makes sure that custom phpdoc tags are not mangled, e.g.
* there are no spaces inserted etc.
*
* @link https://github.com/barryvdh/laravel-ide-helper/issues/666
*/
public function testNoSpaceAfterCustomPhpdocTag(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\CustomPhpdocTags\Models;
use Illuminate\Database\Eloquent\Model;
/**
* The `@SuppressWarnings` tag below contains no space before the `(` but when
* the class phpdoc is written back, one is inserted.
*
* @link https://github.com/barryvdh/laravel-ide-helper/issues/666
* @SuppressWarnings(PHPMD.ExcessiveClassComplexity)
* @property int $id
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent
*/
class Simple extends Model
{
}
@@ -1,6 +1,7 @@
<?php <?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -12,9 +13,9 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Models{ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Models{
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -25,36 +26,34 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGenerateP
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -75,10 +74,10 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGenerateP
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -87,82 +86,80 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGenerateP
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post newModelQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post newModelQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post newQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post newQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post query() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DoesNotGeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
*/ */
class Post extends \Eloquent {} class Post extends \Eloquent {}
} }
@@ -17,19 +17,11 @@ class Test extends AbstractModelsCommand
'--write' => true, '--write' => true,
]); ]);
if (PHP_VERSION_ID >= 80000) { $errors = [
$errors = [ 'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicBelongsTo() : Attempt to read property "created_at" on null',
'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicBelongsTo() : Attempt to read property "created_at" on null', 'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasMany() : Attempt to read property "created_at" on null',
'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasMany() : Attempt to read property "created_at" on null', 'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasOne() : Attempt to read property "created_at" on null',
'Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasOne() : Attempt to read property "created_at" on null', ];
];
} else {
$errors = [
"Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicBelongsTo() : Trying to get property 'created_at' of non-object",
"Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasMany() : Trying to get property 'created_at' of non-object",
"Error resolving relation model of Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic:dynamicHasOne() : Trying to get property 'created_at' of non-object",
];
}
$this->assertSame(0, $tester->getStatusCode()); $this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay()); $this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
@@ -10,13 +10,13 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Eloquent\Relations\HasOne;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\DynamicRelations\Models\Dynamic *
* *
* @property-read \Illuminate\Database\Eloquent\Collection<int, Dynamic> $regularHasMany * @property-read \Illuminate\Database\Eloquent\Collection<int, Dynamic> $regularHasMany
* @property-read int|null $regular_has_many_count * @property-read int|null $regular_has_many_count
* @method static \Illuminate\Database\Eloquent\Builder|Dynamic newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Dynamic newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Dynamic newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Dynamic newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Dynamic query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Dynamic query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Dynamic extends Model class Dynamic extends Model
+1 -30
View File
@@ -8,41 +8,12 @@ use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
use Closure; use Closure;
use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Foundation\Application;
use Illuminate\Support\Str; use Illuminate\Support\Str;
class Test extends AbstractModelsCommand class Test extends AbstractModelsCommand
{ {
public function test_8(): void public function testFactory(): void
{ {
if (!version_compare(Application::VERSION, '8.2', '>=') || !version_compare(Application::VERSION, '9', '<')) {
$this->markTestSkipped(
'This test only works in Laravel >= 8.2 and < 9'
);
}
Factory::guessFactoryNamesUsing(static::getFactoryNameResolver());
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertStringNotContainsString('not found', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
public function test_9(): void
{
if (!version_compare(Application::VERSION, '9', '>=')) {
$this->markTestSkipped(
'This test only works in Laravel >= 9'
);
}
Factory::guessFactoryNamesUsing(static::getFactoryNameResolver()); Factory::guessFactoryNamesUsing(static::getFactoryNameResolver());
$command = $this->app->make(ModelsCommand::class); $command = $this->app->make(ModelsCommand::class);
@@ -9,12 +9,12 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithCustomNamespace *
* *
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\CustomSpace\ModelWithCustomNamespaceFactory factory($count = null, $state = []) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\CustomSpace\ModelWithCustomNamespaceFactory factory($count = null, $state = [])
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithCustomNamespace newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithCustomNamespace newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace query() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithCustomNamespace query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class ModelWithCustomNamespace extends Model class ModelWithCustomNamespace extends Model
@@ -41,12 +41,12 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithFactory *
* *
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithFactoryFactory factory($count = null, $state = []) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithFactoryFactory factory($count = null, $state = [])
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory query() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithFactory query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class ModelWithFactory extends Model class ModelWithFactory extends Model
@@ -60,12 +60,12 @@ declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models; namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithNestedFactory *
* *
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithNestedFactoryFactory factory($count = null, $state = []) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithNestedFactoryFactory factory($count = null, $state = [])
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithNestedFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithNestedFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory query() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithNestedFactory query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class ModelWithNestedFactory extends ModelWithFactory class ModelWithNestedFactory extends ModelWithFactory
@@ -81,11 +81,11 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithoutFactory *
* *
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithoutFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithoutFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory query() * @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithoutFactory query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class ModelWithoutFactory extends Model class ModelWithoutFactory extends Model
@@ -1,94 +0,0 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\CustomSpace\ModelWithCustomNamespaceFactory;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
/**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithCustomNamespace
*
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\CustomSpace\ModelWithCustomNamespaceFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithCustomNamespace query()
* @mixin \Eloquent
*/
class ModelWithCustomNamespace extends Model
{
use HasFactory;
/**
* Create a new factory instance for the model.
*
* @return \Illuminate\Database\Eloquent\Factories\Factory
*/
protected static function newFactory()
{
return ModelWithCustomNamespaceFactory::new();
}
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
/**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithFactory
*
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithFactoryFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithFactory query()
* @mixin \Eloquent
*/
class ModelWithFactory extends Model
{
use HasFactory;
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
/**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithNestedFactory
*
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Factories\ModelWithNestedFactoryFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithNestedFactory query()
* @mixin \Eloquent
*/
class ModelWithNestedFactory extends ModelWithFactory
{
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
/**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Factories\Models\ModelWithoutFactory
*
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|ModelWithoutFactory query()
* @mixin \Eloquent
*/
class ModelWithoutFactory extends Model
{
use HasFactory;
}
@@ -0,0 +1,14 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Enums;
enum PostStatus
{
case Published;
case Unpublished;
case Archived;
}
@@ -0,0 +1,17 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Enums\PostStatus;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
public function scopeHasStatus(Builder $query, ?PostStatus $status = PostStatus::Published)
{
//
}
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,168 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Enums\PostStatus;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @property int $id
* @property string|null $char_nullable
* @property string $char_not_nullable
* @property string|null $string_nullable
* @property string $string_not_nullable
* @property string|null $text_nullable
* @property string $text_not_nullable
* @property string|null $medium_text_nullable
* @property string $medium_text_not_nullable
* @property string|null $long_text_nullable
* @property string $long_text_not_nullable
* @property int|null $integer_nullable
* @property int $integer_not_nullable
* @property int|null $tiny_integer_nullable
* @property int $tiny_integer_not_nullable
* @property int|null $small_integer_nullable
* @property int $small_integer_not_nullable
* @property int|null $medium_integer_nullable
* @property int $medium_integer_not_nullable
* @property int|null $big_integer_nullable
* @property int $big_integer_not_nullable
* @property int|null $unsigned_integer_nullable
* @property int $unsigned_integer_not_nullable
* @property int|null $unsigned_tiny_integer_nullable
* @property int $unsigned_tiny_integer_not_nullable
* @property int|null $unsigned_small_integer_nullable
* @property int $unsigned_small_integer_not_nullable
* @property int|null $unsigned_medium_integer_nullable
* @property int $unsigned_medium_integer_not_nullable
* @property int|null $unsigned_big_integer_nullable
* @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable
* @property float $float_not_nullable
* @property float|null $double_nullable
* @property float $double_not_nullable
* @property string|null $decimal_nullable
* @property string $decimal_not_nullable
* @property int|null $boolean_nullable
* @property int $boolean_not_nullable
* @property string|null $enum_nullable
* @property string $enum_not_nullable
* @property string|null $json_nullable
* @property string $json_not_nullable
* @property string|null $jsonb_nullable
* @property string $jsonb_not_nullable
* @property string|null $date_nullable
* @property string $date_not_nullable
* @property string|null $datetime_nullable
* @property string $datetime_not_nullable
* @property string|null $datetimetz_nullable
* @property string $datetimetz_not_nullable
* @property string|null $time_nullable
* @property string $time_not_nullable
* @property string|null $timetz_nullable
* @property string $timetz_not_nullable
* @property string|null $timestamp_nullable
* @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable
* @property int|null $year_nullable
* @property int $year_not_nullable
* @property string|null $binary_nullable
* @property string $binary_not_nullable
* @property string|null $uuid_nullable
* @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable
* @property string $ipaddress_not_nullable
* @property string|null $macaddress_nullable
* @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static Builder<static>|Post hasStatus(?\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Enums\PostStatus $status = \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpDocWithEnumDefaults\Enums\PostStatus::Published)
* @method static Builder<static>|Post newModelQuery()
* @method static Builder<static>|Post newQuery()
* @method static Builder<static>|Post query()
* @method static Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static Builder<static>|Post whereBigIntegerNullable($value)
* @method static Builder<static>|Post whereBinaryNotNullable($value)
* @method static Builder<static>|Post whereBinaryNullable($value)
* @method static Builder<static>|Post whereBooleanNotNullable($value)
* @method static Builder<static>|Post whereBooleanNullable($value)
* @method static Builder<static>|Post whereCharNotNullable($value)
* @method static Builder<static>|Post whereCharNullable($value)
* @method static Builder<static>|Post whereCreatedAt($value)
* @method static Builder<static>|Post whereDateNotNullable($value)
* @method static Builder<static>|Post whereDateNullable($value)
* @method static Builder<static>|Post whereDatetimeNotNullable($value)
* @method static Builder<static>|Post whereDatetimeNullable($value)
* @method static Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static Builder<static>|Post whereDatetimetzNullable($value)
* @method static Builder<static>|Post whereDecimalNotNullable($value)
* @method static Builder<static>|Post whereDecimalNullable($value)
* @method static Builder<static>|Post whereDoubleNotNullable($value)
* @method static Builder<static>|Post whereDoubleNullable($value)
* @method static Builder<static>|Post whereEnumNotNullable($value)
* @method static Builder<static>|Post whereEnumNullable($value)
* @method static Builder<static>|Post whereFloatNotNullable($value)
* @method static Builder<static>|Post whereFloatNullable($value)
* @method static Builder<static>|Post whereId($value)
* @method static Builder<static>|Post whereIntegerNotNullable($value)
* @method static Builder<static>|Post whereIntegerNullable($value)
* @method static Builder<static>|Post whereIpaddressNotNullable($value)
* @method static Builder<static>|Post whereIpaddressNullable($value)
* @method static Builder<static>|Post whereJsonNotNullable($value)
* @method static Builder<static>|Post whereJsonNullable($value)
* @method static Builder<static>|Post whereJsonbNotNullable($value)
* @method static Builder<static>|Post whereJsonbNullable($value)
* @method static Builder<static>|Post whereLongTextNotNullable($value)
* @method static Builder<static>|Post whereLongTextNullable($value)
* @method static Builder<static>|Post whereMacaddressNotNullable($value)
* @method static Builder<static>|Post whereMacaddressNullable($value)
* @method static Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static Builder<static>|Post whereMediumIntegerNullable($value)
* @method static Builder<static>|Post whereMediumTextNotNullable($value)
* @method static Builder<static>|Post whereMediumTextNullable($value)
* @method static Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static Builder<static>|Post whereSmallIntegerNullable($value)
* @method static Builder<static>|Post whereStringNotNullable($value)
* @method static Builder<static>|Post whereStringNullable($value)
* @method static Builder<static>|Post whereTextNotNullable($value)
* @method static Builder<static>|Post whereTextNullable($value)
* @method static Builder<static>|Post whereTimeNotNullable($value)
* @method static Builder<static>|Post whereTimeNullable($value)
* @method static Builder<static>|Post whereTimestampNotNullable($value)
* @method static Builder<static>|Post whereTimestampNullable($value)
* @method static Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static Builder<static>|Post whereTimestamptzNullable($value)
* @method static Builder<static>|Post whereTimetzNotNullable($value)
* @method static Builder<static>|Post whereTimetzNullable($value)
* @method static Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static Builder<static>|Post whereTinyIntegerNullable($value)
* @method static Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static Builder<static>|Post whereUpdatedAt($value)
* @method static Builder<static>|Post whereUuidNotNullable($value)
* @method static Builder<static>|Post whereUuidNullable($value)
* @method static Builder<static>|Post whereYearNotNullable($value)
* @method static Builder<static>|Post whereYearNullable($value)
* @mixin \Eloquent
*/
class Post extends Model
{
public function scopeHasStatus(Builder $query, ?PostStatus $status = PostStatus::Published)
{
//
}
}
@@ -7,9 +7,9 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhp
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpdoc\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -20,36 +20,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -70,10 +68,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -82,82 +80,80 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -7,9 +7,9 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhp
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpdocCamel\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $charNullable * @property string|null $charNullable
* @property string $charNotNullable * @property string $charNotNullable
* @property string|null $stringNullable * @property string|null $stringNullable
@@ -20,36 +20,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $mediumTextNotNullable * @property string $mediumTextNotNullable
* @property string|null $longTextNullable * @property string|null $longTextNullable
* @property string $longTextNotNullable * @property string $longTextNotNullable
* @property integer|null $integerNullable * @property int|null $integerNullable
* @property integer $integerNotNullable * @property int $integerNotNullable
* @property integer|null $tinyIntegerNullable * @property int|null $tinyIntegerNullable
* @property integer $tinyIntegerNotNullable * @property int $tinyIntegerNotNullable
* @property integer|null $smallIntegerNullable * @property int|null $smallIntegerNullable
* @property integer $smallIntegerNotNullable * @property int $smallIntegerNotNullable
* @property integer|null $mediumIntegerNullable * @property int|null $mediumIntegerNullable
* @property integer $mediumIntegerNotNullable * @property int $mediumIntegerNotNullable
* @property integer|null $bigIntegerNullable * @property int|null $bigIntegerNullable
* @property integer $bigIntegerNotNullable * @property int $bigIntegerNotNullable
* @property integer|null $unsignedIntegerNullable * @property int|null $unsignedIntegerNullable
* @property integer $unsignedIntegerNotNullable * @property int $unsignedIntegerNotNullable
* @property integer|null $unsignedTinyIntegerNullable * @property int|null $unsignedTinyIntegerNullable
* @property integer $unsignedTinyIntegerNotNullable * @property int $unsignedTinyIntegerNotNullable
* @property integer|null $unsignedSmallIntegerNullable * @property int|null $unsignedSmallIntegerNullable
* @property integer $unsignedSmallIntegerNotNullable * @property int $unsignedSmallIntegerNotNullable
* @property integer|null $unsignedMediumIntegerNullable * @property int|null $unsignedMediumIntegerNullable
* @property integer $unsignedMediumIntegerNotNullable * @property int $unsignedMediumIntegerNotNullable
* @property integer|null $unsignedBigIntegerNullable * @property int|null $unsignedBigIntegerNullable
* @property integer $unsignedBigIntegerNotNullable * @property int $unsignedBigIntegerNotNullable
* @property float|null $floatNullable * @property float|null $floatNullable
* @property float $floatNotNullable * @property float $floatNotNullable
* @property float|null $doubleNullable * @property float|null $doubleNullable
* @property float $doubleNotNullable * @property float $doubleNotNullable
* @property string|null $decimalNullable * @property string|null $decimalNullable
* @property string $decimalNotNullable * @property string $decimalNotNullable
* @property string|null $unsignedDecimalNullable * @property int|null $booleanNullable
* @property string $unsignedDecimalNotNullable * @property int $booleanNotNullable
* @property integer|null $booleanNullable
* @property integer $booleanNotNullable
* @property string|null $enumNullable * @property string|null $enumNullable
* @property string $enumNotNullable * @property string $enumNotNullable
* @property string|null $jsonNullable * @property string|null $jsonNullable
@@ -70,10 +68,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestampNotNullable * @property string $timestampNotNullable
* @property string|null $timestamptzNullable * @property string|null $timestamptzNullable
* @property string $timestamptzNotNullable * @property string $timestamptzNotNullable
* @property integer|null $yearNullable * @property int|null $yearNullable
* @property integer $yearNotNullable * @property int $yearNotNullable
* @property mixed|null $binaryNullable * @property string|null $binaryNullable
* @property mixed $binaryNotNullable * @property string $binaryNotNullable
* @property string|null $uuidNullable * @property string|null $uuidNullable
* @property string $uuidNotNullable * @property string $uuidNotNullable
* @property string|null $ipaddressNullable * @property string|null $ipaddressNullable
@@ -82,82 +80,80 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddressNotNullable * @property string $macaddressNotNullable
* @property \Illuminate\Support\Carbon|null $createdAt * @property \Illuminate\Support\Carbon|null $createdAt
* @property \Illuminate\Support\Carbon|null $updatedAt * @property \Illuminate\Support\Carbon|null $updatedAt
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -7,9 +7,9 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhp
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateBasicPhpdocFinal\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -20,36 +20,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -70,10 +68,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -82,82 +80,80 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
final class Post extends Model final class Post extends Model
@@ -0,0 +1,51 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;
use Illuminate\Support\Collection as IntCollection;
class WithCollection extends Model
{
/**
* @return Collection<int, string>
*/
public function getCollectionAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection
*/
public function getCollectionWithoutTemplateAttribute(): Collection
{
return new Collection();
}
public function getCollectionWithoutDocBlockAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection<int, NonModel>
*/
public function getCollectionWithNonModelTemplateAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection<Collection, CollectionModel<IntCollection, CollectionModel<int, NonModel>>>
*/
public function getCollectionWithNestedTemplateAttribute(): Collection
{
return new Collection();
}
}
@@ -0,0 +1,9 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels;
class CollectionModel
{
}
@@ -0,0 +1,9 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels;
class NonModel
{
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write-mixin' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,85 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;
use Illuminate\Support\Collection as IntCollection;
/**
* @mixin IdeHelperWithCollection
*/
class WithCollection extends Model
{
/**
* @return Collection<int, string>
*/
public function getCollectionAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection
*/
public function getCollectionWithoutTemplateAttribute(): Collection
{
return new Collection();
}
public function getCollectionWithoutDocBlockAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection<int, NonModel>
*/
public function getCollectionWithNonModelTemplateAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection<Collection, CollectionModel<IntCollection, CollectionModel<int, NonModel>>>
*/
public function getCollectionWithNestedTemplateAttribute(): Collection
{
return new Collection();
}
}
<?php
// @formatter:off
// phpcs:ignoreFile
/**
* A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model,
* And remove them from this file, to prevent double declarations.
*
* @author Barry vd. Heuvel <[email protected]>
*/
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models{
/**
*
*
* @property-read \Illuminate\Support\Collection<int, string> $collection
* @property-read \Illuminate\Support\Collection<\Illuminate\Support\Collection, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel<\Illuminate\Support\Collection, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel<int, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel>>> $collection_with_nested_template
* @property-read \Illuminate\Support\Collection<int, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel> $collection_with_non_model_template
* @property-read \Illuminate\Support\Collection $collection_without_doc_block
* @property-read \Illuminate\Support\Collection $collection_without_template
* @method static \Illuminate\Database\Eloquent\Builder<static>|WithCollection newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|WithCollection newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|WithCollection query()
* @mixin \Eloquent
*/
#[\AllowDynamicProperties]
class IdeHelperWithCollection {}
}
@@ -1,6 +1,7 @@
<?php <?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -12,9 +13,9 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Models{ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Models{
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -25,36 +26,34 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -75,10 +74,10 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -87,96 +86,94 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post isActive() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post isActive()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post isLoadingWith(?string $with) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post isLoadingWith(?string $with)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post isStatus(string $status) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post isStatus(string $status)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post newModelQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post newModelQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post newQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post newQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post query() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post query()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBigIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBigIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBigIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBinaryNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBinaryNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBinaryNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBinaryNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBooleanNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBooleanNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereBooleanNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereBooleanNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereCharNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereCharNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereCharNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereCharNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereCreatedAt($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereCreatedAt($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDateNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDateNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDateNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDateNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDatetimeNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDatetimeNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDatetimeNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDatetimeNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDatetimetzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDatetimetzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDatetimetzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDecimalNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDecimalNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDecimalNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDecimalNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDoubleNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDoubleNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereDoubleNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereDoubleNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereEnumNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereEnumNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereEnumNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereEnumNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereFloatNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereFloatNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereFloatNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereFloatNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereId($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereId($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereIpaddressNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereIpaddressNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereIpaddressNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereIpaddressNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereJsonNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereJsonNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereJsonNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereJsonNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereJsonbNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereJsonbNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereJsonbNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereJsonbNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereLongTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereLongTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereLongTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereLongTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMacaddressNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMacaddressNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMacaddressNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMacaddressNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMediumIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMediumIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMediumIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMediumTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMediumTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereMediumTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereMediumTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereSmallIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereSmallIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereSmallIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereStringNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereStringNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereStringNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereStringNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimeNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimeNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimeNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimeNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimestampNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimestampNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimestampNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimestampNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimestamptzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimestamptzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimestamptzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimetzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimetzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTimetzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTimetzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTinyIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereTinyIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereTinyIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedBigIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedDecimalNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedDecimalNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUpdatedAt($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUuidNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUpdatedAt($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereUuidNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUuidNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereYearNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereUuidNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post whereYearNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereYearNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withBool(?bool $booleanVar)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post whereYearNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withBoolDifferently(?bool $booleanVar)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withBool(?bool $booleanVar) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withBoolTypeHinted(bool $booleanVar)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withBoolDifferently(?bool $booleanVar) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withMixedOption($option)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withBoolTypeHinted(bool $booleanVar) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withNullAndAssignmentTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand = null)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withMixedOption($option) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withNullTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withNullAndAssignmentTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand = null) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withNullTestCommandInDocBlock($testCommand)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withNullTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withSomeone($someone)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withNullTestCommandInDocBlock($testCommand) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withTestCommand(\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withSomeone($someone) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withTheNumber(?int $number)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withTestCommand(\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder<static>|Post withTheNumberDifferently(?int $number)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withTheNumber(?int $number)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilder\Builders\PostExternalQueryBuilder|Post withTheNumberDifferently(?int $number)
*/ */
class Post extends \Eloquent {} class Post extends \Eloquent {}
} }
@@ -8,9 +8,9 @@ use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExte
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithExternalEloquentBuilderWithFqn\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -21,36 +21,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -71,10 +69,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -83,96 +81,94 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static PostExternalQueryBuilder|Post isActive() * @method static PostExternalQueryBuilder<static>|Post isActive()
* @method static PostExternalQueryBuilder|Post isLoadingWith(?string $with) * @method static PostExternalQueryBuilder<static>|Post isLoadingWith(?string $with)
* @method static PostExternalQueryBuilder|Post isStatus(string $status) * @method static PostExternalQueryBuilder<static>|Post isStatus(string $status)
* @method static PostExternalQueryBuilder|Post newModelQuery() * @method static PostExternalQueryBuilder<static>|Post newModelQuery()
* @method static PostExternalQueryBuilder|Post newQuery() * @method static PostExternalQueryBuilder<static>|Post newQuery()
* @method static PostExternalQueryBuilder|Post query() * @method static PostExternalQueryBuilder<static>|Post query()
* @method static PostExternalQueryBuilder|Post whereBigIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBigIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereBigIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBigIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereBinaryNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBinaryNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereBinaryNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBinaryNullable($value)
* @method static PostExternalQueryBuilder|Post whereBooleanNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBooleanNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereBooleanNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereBooleanNullable($value)
* @method static PostExternalQueryBuilder|Post whereCharNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereCharNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereCharNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereCharNullable($value)
* @method static PostExternalQueryBuilder|Post whereCreatedAt($value) * @method static PostExternalQueryBuilder<static>|Post whereCreatedAt($value)
* @method static PostExternalQueryBuilder|Post whereDateNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDateNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereDateNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDateNullable($value)
* @method static PostExternalQueryBuilder|Post whereDatetimeNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDatetimeNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereDatetimeNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDatetimeNullable($value)
* @method static PostExternalQueryBuilder|Post whereDatetimetzNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDatetimetzNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereDatetimetzNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDatetimetzNullable($value)
* @method static PostExternalQueryBuilder|Post whereDecimalNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDecimalNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereDecimalNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDecimalNullable($value)
* @method static PostExternalQueryBuilder|Post whereDoubleNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDoubleNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereDoubleNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereDoubleNullable($value)
* @method static PostExternalQueryBuilder|Post whereEnumNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereEnumNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereEnumNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereEnumNullable($value)
* @method static PostExternalQueryBuilder|Post whereFloatNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereFloatNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereFloatNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereFloatNullable($value)
* @method static PostExternalQueryBuilder|Post whereId($value) * @method static PostExternalQueryBuilder<static>|Post whereId($value)
* @method static PostExternalQueryBuilder|Post whereIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereIpaddressNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereIpaddressNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereIpaddressNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereIpaddressNullable($value)
* @method static PostExternalQueryBuilder|Post whereJsonNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereJsonNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereJsonNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereJsonNullable($value)
* @method static PostExternalQueryBuilder|Post whereJsonbNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereJsonbNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereJsonbNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereJsonbNullable($value)
* @method static PostExternalQueryBuilder|Post whereLongTextNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereLongTextNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereLongTextNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereLongTextNullable($value)
* @method static PostExternalQueryBuilder|Post whereMacaddressNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMacaddressNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereMacaddressNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMacaddressNullable($value)
* @method static PostExternalQueryBuilder|Post whereMediumIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMediumIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereMediumIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMediumIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereMediumTextNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMediumTextNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereMediumTextNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereMediumTextNullable($value)
* @method static PostExternalQueryBuilder|Post whereSmallIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereSmallIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereSmallIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereSmallIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereStringNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereStringNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereStringNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereStringNullable($value)
* @method static PostExternalQueryBuilder|Post whereTextNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTextNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTextNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTextNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimeNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimeNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimeNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimeNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimestampNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimestampNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimestampNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimestampNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimestamptzNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimestamptzNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimestamptzNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimestamptzNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimetzNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimetzNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTimetzNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTimetzNullable($value)
* @method static PostExternalQueryBuilder|Post whereTinyIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTinyIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereTinyIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereTinyIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedBigIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedBigIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedDecimalNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedDecimalNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedMediumIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedSmallIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUpdatedAt($value)
* @method static PostExternalQueryBuilder|Post whereUnsignedTinyIntegerNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereUuidNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUpdatedAt($value) * @method static PostExternalQueryBuilder<static>|Post whereUuidNullable($value)
* @method static PostExternalQueryBuilder|Post whereUuidNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereYearNotNullable($value)
* @method static PostExternalQueryBuilder|Post whereUuidNullable($value) * @method static PostExternalQueryBuilder<static>|Post whereYearNullable($value)
* @method static PostExternalQueryBuilder|Post whereYearNotNullable($value) * @method static PostExternalQueryBuilder<static>|Post withBool(?bool $booleanVar)
* @method static PostExternalQueryBuilder|Post whereYearNullable($value) * @method static PostExternalQueryBuilder<static>|Post withBoolDifferently(?bool $booleanVar)
* @method static PostExternalQueryBuilder|Post withBool(?bool $booleanVar) * @method static PostExternalQueryBuilder<static>|Post withBoolTypeHinted(bool $booleanVar)
* @method static PostExternalQueryBuilder|Post withBoolDifferently(?bool $booleanVar) * @method static PostExternalQueryBuilder<static>|Post withMixedOption($option)
* @method static PostExternalQueryBuilder|Post withBoolTypeHinted(bool $booleanVar) * @method static PostExternalQueryBuilder<static>|Post withNullAndAssignmentTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand = null)
* @method static PostExternalQueryBuilder|Post withMixedOption($option) * @method static PostExternalQueryBuilder<static>|Post withNullTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand)
* @method static PostExternalQueryBuilder|Post withNullAndAssignmentTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand = null) * @method static PostExternalQueryBuilder<static>|Post withNullTestCommandInDocBlock($testCommand)
* @method static PostExternalQueryBuilder|Post withNullTestCommand(?\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand) * @method static PostExternalQueryBuilder<static>|Post withSomeone($someone)
* @method static PostExternalQueryBuilder|Post withNullTestCommandInDocBlock($testCommand) * @method static PostExternalQueryBuilder<static>|Post withTestCommand(\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand)
* @method static PostExternalQueryBuilder|Post withSomeone($someone) * @method static PostExternalQueryBuilder<static>|Post withTheNumber(?int $number)
* @method static PostExternalQueryBuilder|Post withTestCommand(\Barryvdh\LaravelIdeHelper\Console\ModelsCommand $testCommand) * @method static PostExternalQueryBuilder<static>|Post withTheNumberDifferently(?int $number)
* @method static PostExternalQueryBuilder|Post withTheNumber(?int $number)
* @method static PostExternalQueryBuilder|Post withTheNumberDifferently(?int $number)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -9,9 +9,9 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -22,36 +22,34 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -72,10 +70,10 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -86,86 +84,84 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \Illuminate\Database\Eloquent\Collection<int, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post> $posts * @property-read \Illuminate\Database\Eloquent\Collection<int, \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post> $posts
* @property-read int|null $posts_count * @property-read int|null $posts_count
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post null(string $unusedParam) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post null(string $unusedParam)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post onlyTrashed() * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post query()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereYearNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post withTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post whereYearNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post withoutTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post withTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithForcedFqn\Models\Post withoutTrashed()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -15,9 +15,9 @@ use Illuminate\Database\Query\Builder as QueryBuilder;
use Illuminate\Support\Carbon; use Illuminate\Support\Carbon;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqn\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property CastType $char_not_nullable * @property CastType $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -28,36 +28,34 @@ use Illuminate\Support\Carbon;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -78,10 +76,10 @@ use Illuminate\Support\Carbon;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -92,86 +90,84 @@ use Illuminate\Support\Carbon;
* @property Carbon|null $updated_at * @property Carbon|null $updated_at
* @property-read Collection<int, Post> $posts * @property-read Collection<int, Post> $posts
* @property-read int|null $posts_count * @property-read int|null $posts_count
* @method static EloquentBuilder|Post newModelQuery() * @method static EloquentBuilder<static>|Post newModelQuery()
* @method static EloquentBuilder|Post newQuery() * @method static EloquentBuilder<static>|Post newQuery()
* @method static EloquentBuilder|Post null(string $unusedParam) * @method static EloquentBuilder<static>|Post null(string $unusedParam)
* @method static EloquentBuilder|Post onlyTrashed() * @method static EloquentBuilder<static>|Post onlyTrashed()
* @method static EloquentBuilder|Post query() * @method static EloquentBuilder<static>|Post query()
* @method static EloquentBuilder|Post whereBigIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereBigIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereBigIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereBigIntegerNullable($value)
* @method static EloquentBuilder|Post whereBinaryNotNullable($value) * @method static EloquentBuilder<static>|Post whereBinaryNotNullable($value)
* @method static EloquentBuilder|Post whereBinaryNullable($value) * @method static EloquentBuilder<static>|Post whereBinaryNullable($value)
* @method static EloquentBuilder|Post whereBooleanNotNullable($value) * @method static EloquentBuilder<static>|Post whereBooleanNotNullable($value)
* @method static EloquentBuilder|Post whereBooleanNullable($value) * @method static EloquentBuilder<static>|Post whereBooleanNullable($value)
* @method static EloquentBuilder|Post whereCharNotNullable($value) * @method static EloquentBuilder<static>|Post whereCharNotNullable($value)
* @method static EloquentBuilder|Post whereCharNullable($value) * @method static EloquentBuilder<static>|Post whereCharNullable($value)
* @method static EloquentBuilder|Post whereCreatedAt($value) * @method static EloquentBuilder<static>|Post whereCreatedAt($value)
* @method static EloquentBuilder|Post whereDateNotNullable($value) * @method static EloquentBuilder<static>|Post whereDateNotNullable($value)
* @method static EloquentBuilder|Post whereDateNullable($value) * @method static EloquentBuilder<static>|Post whereDateNullable($value)
* @method static EloquentBuilder|Post whereDatetimeNotNullable($value) * @method static EloquentBuilder<static>|Post whereDatetimeNotNullable($value)
* @method static EloquentBuilder|Post whereDatetimeNullable($value) * @method static EloquentBuilder<static>|Post whereDatetimeNullable($value)
* @method static EloquentBuilder|Post whereDatetimetzNotNullable($value) * @method static EloquentBuilder<static>|Post whereDatetimetzNotNullable($value)
* @method static EloquentBuilder|Post whereDatetimetzNullable($value) * @method static EloquentBuilder<static>|Post whereDatetimetzNullable($value)
* @method static EloquentBuilder|Post whereDecimalNotNullable($value) * @method static EloquentBuilder<static>|Post whereDecimalNotNullable($value)
* @method static EloquentBuilder|Post whereDecimalNullable($value) * @method static EloquentBuilder<static>|Post whereDecimalNullable($value)
* @method static EloquentBuilder|Post whereDoubleNotNullable($value) * @method static EloquentBuilder<static>|Post whereDoubleNotNullable($value)
* @method static EloquentBuilder|Post whereDoubleNullable($value) * @method static EloquentBuilder<static>|Post whereDoubleNullable($value)
* @method static EloquentBuilder|Post whereEnumNotNullable($value) * @method static EloquentBuilder<static>|Post whereEnumNotNullable($value)
* @method static EloquentBuilder|Post whereEnumNullable($value) * @method static EloquentBuilder<static>|Post whereEnumNullable($value)
* @method static EloquentBuilder|Post whereFloatNotNullable($value) * @method static EloquentBuilder<static>|Post whereFloatNotNullable($value)
* @method static EloquentBuilder|Post whereFloatNullable($value) * @method static EloquentBuilder<static>|Post whereFloatNullable($value)
* @method static EloquentBuilder|Post whereId($value) * @method static EloquentBuilder<static>|Post whereId($value)
* @method static EloquentBuilder|Post whereIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereIntegerNullable($value)
* @method static EloquentBuilder|Post whereIpaddressNotNullable($value) * @method static EloquentBuilder<static>|Post whereIpaddressNotNullable($value)
* @method static EloquentBuilder|Post whereIpaddressNullable($value) * @method static EloquentBuilder<static>|Post whereIpaddressNullable($value)
* @method static EloquentBuilder|Post whereJsonNotNullable($value) * @method static EloquentBuilder<static>|Post whereJsonNotNullable($value)
* @method static EloquentBuilder|Post whereJsonNullable($value) * @method static EloquentBuilder<static>|Post whereJsonNullable($value)
* @method static EloquentBuilder|Post whereJsonbNotNullable($value) * @method static EloquentBuilder<static>|Post whereJsonbNotNullable($value)
* @method static EloquentBuilder|Post whereJsonbNullable($value) * @method static EloquentBuilder<static>|Post whereJsonbNullable($value)
* @method static EloquentBuilder|Post whereLongTextNotNullable($value) * @method static EloquentBuilder<static>|Post whereLongTextNotNullable($value)
* @method static EloquentBuilder|Post whereLongTextNullable($value) * @method static EloquentBuilder<static>|Post whereLongTextNullable($value)
* @method static EloquentBuilder|Post whereMacaddressNotNullable($value) * @method static EloquentBuilder<static>|Post whereMacaddressNotNullable($value)
* @method static EloquentBuilder|Post whereMacaddressNullable($value) * @method static EloquentBuilder<static>|Post whereMacaddressNullable($value)
* @method static EloquentBuilder|Post whereMediumIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereMediumIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereMediumIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereMediumIntegerNullable($value)
* @method static EloquentBuilder|Post whereMediumTextNotNullable($value) * @method static EloquentBuilder<static>|Post whereMediumTextNotNullable($value)
* @method static EloquentBuilder|Post whereMediumTextNullable($value) * @method static EloquentBuilder<static>|Post whereMediumTextNullable($value)
* @method static EloquentBuilder|Post whereSmallIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereSmallIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereSmallIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereSmallIntegerNullable($value)
* @method static EloquentBuilder|Post whereStringNotNullable($value) * @method static EloquentBuilder<static>|Post whereStringNotNullable($value)
* @method static EloquentBuilder|Post whereStringNullable($value) * @method static EloquentBuilder<static>|Post whereStringNullable($value)
* @method static EloquentBuilder|Post whereTextNotNullable($value) * @method static EloquentBuilder<static>|Post whereTextNotNullable($value)
* @method static EloquentBuilder|Post whereTextNullable($value) * @method static EloquentBuilder<static>|Post whereTextNullable($value)
* @method static EloquentBuilder|Post whereTimeNotNullable($value) * @method static EloquentBuilder<static>|Post whereTimeNotNullable($value)
* @method static EloquentBuilder|Post whereTimeNullable($value) * @method static EloquentBuilder<static>|Post whereTimeNullable($value)
* @method static EloquentBuilder|Post whereTimestampNotNullable($value) * @method static EloquentBuilder<static>|Post whereTimestampNotNullable($value)
* @method static EloquentBuilder|Post whereTimestampNullable($value) * @method static EloquentBuilder<static>|Post whereTimestampNullable($value)
* @method static EloquentBuilder|Post whereTimestamptzNotNullable($value) * @method static EloquentBuilder<static>|Post whereTimestamptzNotNullable($value)
* @method static EloquentBuilder|Post whereTimestamptzNullable($value) * @method static EloquentBuilder<static>|Post whereTimestamptzNullable($value)
* @method static EloquentBuilder|Post whereTimetzNotNullable($value) * @method static EloquentBuilder<static>|Post whereTimetzNotNullable($value)
* @method static EloquentBuilder|Post whereTimetzNullable($value) * @method static EloquentBuilder<static>|Post whereTimetzNullable($value)
* @method static EloquentBuilder|Post whereTinyIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereTinyIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereTinyIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereTinyIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedBigIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereUnsignedBigIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedDecimalNotNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereUnsignedDecimalNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereUnsignedIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereUnsignedMediumIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static EloquentBuilder|Post whereUnsignedSmallIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static EloquentBuilder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static EloquentBuilder<static>|Post whereUpdatedAt($value)
* @method static EloquentBuilder|Post whereUnsignedTinyIntegerNullable($value) * @method static EloquentBuilder<static>|Post whereUuidNotNullable($value)
* @method static EloquentBuilder|Post whereUpdatedAt($value) * @method static EloquentBuilder<static>|Post whereUuidNullable($value)
* @method static EloquentBuilder|Post whereUuidNotNullable($value) * @method static EloquentBuilder<static>|Post whereYearNotNullable($value)
* @method static EloquentBuilder|Post whereUuidNullable($value) * @method static EloquentBuilder<static>|Post whereYearNullable($value)
* @method static EloquentBuilder|Post whereYearNotNullable($value) * @method static EloquentBuilder<static>|Post withTrashed()
* @method static EloquentBuilder|Post whereYearNullable($value) * @method static EloquentBuilder<static>|Post withoutTrashed()
* @method static EloquentBuilder|Post withTrashed()
* @method static EloquentBuilder|Post withoutTrashed()
* @mixin Eloquent * @mixin Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -1,6 +1,7 @@
<?php <?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -12,9 +13,9 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Models{ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Models{
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -25,36 +26,34 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -75,10 +74,10 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -87,82 +86,80 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post newModelQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post newModelQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post newQuery() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post newQuery()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post query() * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post query()
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBigIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBigIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBigIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBinaryNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBinaryNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBinaryNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBinaryNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBooleanNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBooleanNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereBooleanNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereBooleanNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereCharNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereCharNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereCharNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereCharNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereCreatedAt($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereCreatedAt($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDateNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDateNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDateNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDateNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDatetimeNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDatetimeNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDatetimeNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDatetimeNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDatetimetzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDatetimetzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDatetimetzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDecimalNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDecimalNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDecimalNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDecimalNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDoubleNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDoubleNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereDoubleNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereDoubleNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereEnumNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereEnumNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereEnumNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereEnumNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereFloatNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereFloatNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereFloatNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereFloatNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereId($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereId($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereIpaddressNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereIpaddressNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereIpaddressNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereIpaddressNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereJsonNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereJsonNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereJsonNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereJsonNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereJsonbNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereJsonbNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereJsonbNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereJsonbNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereLongTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereLongTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereLongTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereLongTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMacaddressNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMacaddressNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMacaddressNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMacaddressNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMediumIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMediumIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMediumIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMediumTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMediumTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereMediumTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereMediumTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereSmallIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereSmallIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereSmallIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereStringNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereStringNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereStringNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereStringNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTextNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTextNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTextNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTextNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimeNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimeNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimeNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimeNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimestampNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimestampNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimestampNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimestampNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimestamptzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimestamptzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimestamptzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimetzNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimetzNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTimetzNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTimetzNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTinyIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereTinyIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereTinyIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedBigIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedDecimalNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedDecimalNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUpdatedAt($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUuidNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUpdatedAt($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereUuidNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUuidNotNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereYearNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereUuidNullable($value) * @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder<static>|Post whereYearNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereYearNotNullable($value)
* @method static \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithFqnInExternalFile\Builders\EMaterialQueryBuilder|Post whereYearNullable($value)
*/ */
class Post extends \Eloquent {} class Post extends \Eloquent {}
} }
@@ -0,0 +1,16 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models;
use Illuminate\Database\Eloquent\Model;
/**
* @property $someProp
* @method someMethod(string $method)
* @mixin IdeHelperPost
*/
final class FinalPost extends Model
{
}
@@ -6,6 +6,22 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/**
* @property $someProp
* @method someMethod(string $method)
* @mixin IdeHelperFinalPost
*/
final class FinalPost extends Model
{
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models;
use Illuminate\Database\Eloquent\Model;
/** /**
* @property $someProp * @property $someProp
* @method someMethod(string $method) * @method someMethod(string $method)
@@ -17,6 +33,7 @@ class Post extends Model
<?php <?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -28,11 +45,26 @@ class Post extends Model
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models{ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models{
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models\Post *
* *
* @property $someProp * @property $someProp
* @method someMethod(string $method) * @method someMethod(string $method)
* @property integer $id * @method static \Illuminate\Database\Eloquent\Builder<static>|FinalPost newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|FinalPost newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|FinalPost query()
* @mixin \Eloquent
*/
#[\AllowDynamicProperties]
final class IdeHelperFinalPost {}
}
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWithMixin\Models{
/**
*
*
* @property $someProp
* @method someMethod(string $method)
* @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -43,36 +75,34 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -93,10 +123,10 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -105,84 +135,83 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GeneratePhpdocWi
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
#[\AllowDynamicProperties]
class IdeHelperPost {} class IdeHelperPost {}
} }
@@ -9,17 +9,17 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenericsSyntaxDisabled\Models\Simple *
* *
* @property integer $id * @property int $id
* @property-read \Illuminate\Database\Eloquent\Collection|Simple[] $regularBelongsToMany * @property-read \Illuminate\Database\Eloquent\Collection|Simple[] $regularBelongsToMany
* @property-read int|null $regular_belongs_to_many_count * @property-read int|null $regular_belongs_to_many_count
* @property-read \Illuminate\Database\Eloquent\Collection|Simple[] $regularHasMany * @property-read \Illuminate\Database\Eloquent\Collection|Simple[] $regularHasMany
* @property-read int|null $regular_has_many_count * @property-read int|null $regular_has_many_count
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -103,4 +103,8 @@ class Simple extends Model
public function getAttributeReturnsVoidAttribute(): void public function getAttributeReturnsVoidAttribute(): void
{ {
} }
private function getInvalidAccessModifierAttribute()
{
}
} }
@@ -8,9 +8,9 @@ use DateTime;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Getter\Models\Simple *
* *
* @property integer $id * @property int $id
* @property-read int|null $attribute_return_type_int_or_null * @property-read int|null $attribute_return_type_int_or_null
* @property-read array $attribute_returns_array * @property-read array $attribute_returns_array
* @property-read bool $attribute_returns_bool * @property-read bool $attribute_returns_bool
@@ -31,10 +31,10 @@ use Illuminate\Database\Eloquent\Model;
* @property-read int $attribute_with_int_return_type_and_phpdoc * @property-read int $attribute_with_int_return_type_and_phpdoc
* @property-read int $attribute_with_int_return_type * @property-read int $attribute_with_int_return_type
* @property-read mixed $attribute_without_type * @property-read mixed $attribute_without_type
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -133,4 +133,8 @@ class Simple extends Model
public function getAttributeReturnsVoidAttribute(): void public function getAttributeReturnsVoidAttribute(): void
{ {
} }
private function getInvalidAccessModifierAttribute()
{
}
} }
@@ -7,11 +7,11 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Ignored\Models;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Ignored\Models\NotIgnored *
* *
* @method static \Illuminate\Database\Eloquent\Builder|NotIgnored newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|NotIgnored newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|NotIgnored newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|NotIgnored newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|NotIgnored query() * @method static \Illuminate\Database\Eloquent\Builder<static>|NotIgnored query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class NotIgnored extends Model class NotIgnored extends Model
@@ -19,6 +19,11 @@ class User extends Model implements Authenticatable
// TODO: Implement getAuthIdentifier() method. // TODO: Implement getAuthIdentifier() method.
} }
public function getAuthPasswordName()
{
// TODO: Implement getAuthPasswordName() method.
}
public function getAuthPassword() public function getAuthPassword()
{ {
// TODO: Implement getAuthPassword() method. // TODO: Implement getAuthPassword() method.
@@ -1,6 +1,7 @@
<?php <?php
// @formatter:off // @formatter:off
// phpcs:ignoreFile
/** /**
* A helper file for your Eloquent Models * A helper file for your Eloquent Models
* Copy the phpDocs from this file to the correct Model, * Copy the phpDocs from this file to the correct Model,
@@ -12,11 +13,11 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Interfaces\Models{ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Interfaces\Models{
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Interfaces\Models\User *
* *
* @method static \Illuminate\Database\Eloquent\Builder|User newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|User newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|User newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|User newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|User query() * @method static \Illuminate\Database\Eloquent\Builder<static>|User query()
*/ */
class User extends \Eloquent implements \Illuminate\Contracts\Auth\Authenticatable {} class User extends \Eloquent implements \Illuminate\Contracts\Auth\Authenticatable {}
} }
@@ -11,7 +11,7 @@ class CastableReturnsAnonymousCaster implements Castable
{ {
public static function castUsing(array $arguments) public static function castUsing(array $arguments)
{ {
return new class() implements CastsAttributes { return new class () implements CastsAttributes {
/** /**
* @inheritDoc * @inheritDoc
* @return CastedProperty * @return CastedProperty
@@ -11,7 +11,7 @@ class CastableWithoutReturnType implements Castable
{ {
public static function castUsing(array $arguments) public static function castUsing(array $arguments)
{ {
return new class() implements CastsAttributes { return new class () implements CastsAttributes {
public function get($model, string $key, $value, array $attributes) public function get($model, string $key, $value, array $attributes)
{ {
return new CastedProperty(); return new CastedProperty();
@@ -10,7 +10,7 @@ class CustomCasterWithDocblockReturnFqn implements CastsAttributes
{ {
/** /**
* @inheritDoc * @inheritDoc
* @return \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty * @return CastedProperty
*/ */
public function get($model, string $key, $value, array $attributes) public function get($model, string $key, $value, array $attributes)
{ {
@@ -0,0 +1,21 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts;
use Illuminate\Contracts\Database\Eloquent\CastsAttributes;
use Illuminate\Database\Eloquent\Model;
class CustomCasterWithStaticReturnType implements CastsAttributes
{
public function get(Model $model, string $key, mixed $value, array $attributes): static
{
// TODO: Implement get() method.
}
public function set(Model $model, string $key, mixed $value, array $attributes): array
{
// TODO: Implement set() method.
}
}
@@ -15,6 +15,7 @@ use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Cas
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithReturnType; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithReturnType;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithStaticReturnType;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithStaticDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithStaticDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithThisDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithThisDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\InboundAttributeCaster; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\InboundAttributeCaster;
@@ -26,11 +27,13 @@ class CustomCast extends Model
{ {
protected $casts = [ protected $casts = [
'casted_property_with_return_type' => CustomCasterWithReturnType::class, 'casted_property_with_return_type' => CustomCasterWithReturnType::class,
'casted_property_with_static_return_type' => CustomCasterWithStaticReturnType::class,
'casted_property_with_return_docblock' => CustomCasterWithDocblockReturn::class, 'casted_property_with_return_docblock' => CustomCasterWithDocblockReturn::class,
'casted_property_with_return_docblock_fqn' => CustomCasterWithDocblockReturnFqn::class, 'casted_property_with_return_docblock_fqn' => CustomCasterWithDocblockReturnFqn::class,
'casted_property_with_return_primitive' => CustomCasterWithPrimitiveReturn::class, 'casted_property_with_return_primitive' => CustomCasterWithPrimitiveReturn::class,
'casted_property_with_return_primitive_docblock' => CustomCasterWithPrimitiveDocblockReturn::class, 'casted_property_with_return_primitive_docblock' => CustomCasterWithPrimitiveDocblockReturn::class,
'casted_property_with_return_nullable_primitive' => CustomCasterWithNullablePrimitiveReturn::class, 'casted_property_with_return_nullable_primitive' => CustomCasterWithNullablePrimitiveReturn::class,
'casted_property_with_return_nullable_primitive_and_nullable_column' => CustomCasterWithNullablePrimitiveReturn::class,
'casted_property_without_return' => CustomCasterWithoutReturnType::class, 'casted_property_without_return' => CustomCasterWithoutReturnType::class,
'casted_property_with_param' => CustomCasterWithParam::class . ':param', 'casted_property_with_param' => CustomCasterWithParam::class . ':param',
'casted_property_with_static_return_docblock' => SelfCastingCasterWithStaticDocblockReturn::class, 'casted_property_with_static_return_docblock' => SelfCastingCasterWithStaticDocblockReturn::class,
@@ -15,6 +15,7 @@ use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Cas
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithPrimitiveReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithReturnType; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithReturnType;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CustomCasterWithStaticReturnType;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithStaticDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithStaticDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithThisDocblockReturn; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\ExtendedSelfCastingCasterWithThisDocblockReturn;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\InboundAttributeCaster; use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\InboundAttributeCaster;
@@ -23,14 +24,15 @@ use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Cas
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Models\CustomCast *
* *
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_type * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_type
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_docblock * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_docblock
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_docblock_fqn * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_return_docblock_fqn
* @property array $casted_property_with_return_primitive * @property array $casted_property_with_return_primitive
* @property array|null $casted_property_with_return_primitive_docblock * @property array $casted_property_with_return_primitive_docblock
* @property array|null $casted_property_with_return_nullable_primitive * @property array $casted_property_with_return_nullable_primitive
* @property array|null $casted_property_with_return_nullable_primitive_and_nullable_column
* @property $casted_property_without_return * @property $casted_property_without_return
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_param * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_param
* @property SelfCastingCasterWithStaticDocblockReturn $casted_property_with_static_return_docblock * @property SelfCastingCasterWithStaticDocblockReturn $casted_property_with_static_return_docblock
@@ -38,38 +40,42 @@ use Illuminate\Database\Eloquent\Model;
* @property ExtendedSelfCastingCasterWithStaticDocblockReturn $extended_casted_property_with_static_return_docblock * @property ExtendedSelfCastingCasterWithStaticDocblockReturn $extended_casted_property_with_static_return_docblock
* @property ExtendedSelfCastingCasterWithThisDocblockReturn $extended_casted_property_with_this_return_docblock * @property ExtendedSelfCastingCasterWithThisDocblockReturn $extended_casted_property_with_this_return_docblock
* @property SelfCastingCasterWithStaticDocblockReturn $casted_property_with_static_return_docblock_and_param * @property SelfCastingCasterWithStaticDocblockReturn $casted_property_with_static_return_docblock_and_param
* @property CustomCasterWithStaticReturnType $casted_property_with_static_return_type
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_castable * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_castable
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_anonymous_cast * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $casted_property_with_anonymous_cast
* @property CastableWithoutReturnType $casted_property_without_return_type * @property CastableWithoutReturnType $casted_property_without_return_type
* @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $cast_without_property * @property \Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\LaravelCustomCasts\Casts\CastedProperty $cast_without_property
* @property mixed $cast_inbound_attribute * @property mixed $cast_inbound_attribute
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast query() * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast query()
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithParam($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithParam($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnDocblock($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnDocblockFqn($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnDocblockFqn($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnNullablePrimitive($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnNullablePrimitive($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnPrimitive($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnNullablePrimitiveAndNullableColumn($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnPrimitiveDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnPrimitive($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithReturnType($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnPrimitiveDocblock($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithStaticReturnDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithReturnType($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithStaticReturnDocblockAndParam($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithStaticReturnDocblock($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithThisReturnDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithStaticReturnDocblockAndParam($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereCastedPropertyWithoutReturn($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithThisReturnDocblock($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereExtendedCastedPropertyWithStaticReturnDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereCastedPropertyWithoutReturn($value)
* @method static \Illuminate\Database\Eloquent\Builder|CustomCast whereExtendedCastedPropertyWithThisReturnDocblock($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereExtendedCastedPropertyWithStaticReturnDocblock($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|CustomCast whereExtendedCastedPropertyWithThisReturnDocblock($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class CustomCast extends Model class CustomCast extends Model
{ {
protected $casts = [ protected $casts = [
'casted_property_with_return_type' => CustomCasterWithReturnType::class, 'casted_property_with_return_type' => CustomCasterWithReturnType::class,
'casted_property_with_static_return_type' => CustomCasterWithStaticReturnType::class,
'casted_property_with_return_docblock' => CustomCasterWithDocblockReturn::class, 'casted_property_with_return_docblock' => CustomCasterWithDocblockReturn::class,
'casted_property_with_return_docblock_fqn' => CustomCasterWithDocblockReturnFqn::class, 'casted_property_with_return_docblock_fqn' => CustomCasterWithDocblockReturnFqn::class,
'casted_property_with_return_primitive' => CustomCasterWithPrimitiveReturn::class, 'casted_property_with_return_primitive' => CustomCasterWithPrimitiveReturn::class,
'casted_property_with_return_primitive_docblock' => CustomCasterWithPrimitiveDocblockReturn::class, 'casted_property_with_return_primitive_docblock' => CustomCasterWithPrimitiveDocblockReturn::class,
'casted_property_with_return_nullable_primitive' => CustomCasterWithNullablePrimitiveReturn::class, 'casted_property_with_return_nullable_primitive' => CustomCasterWithNullablePrimitiveReturn::class,
'casted_property_with_return_nullable_primitive_and_nullable_column' => CustomCasterWithNullablePrimitiveReturn::class,
'casted_property_without_return' => CustomCasterWithoutReturnType::class, 'casted_property_without_return' => CustomCasterWithoutReturnType::class,
'casted_property_with_param' => CustomCasterWithParam::class . ':param', 'casted_property_with_param' => CustomCasterWithParam::class . ':param',
'casted_property_with_static_return_docblock' => SelfCastingCasterWithStaticDocblockReturn::class, 'casted_property_with_static_return_docblock' => SelfCastingCasterWithStaticDocblockReturn::class,
@@ -7,9 +7,9 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\MagicWhere\Model
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\MagicWhere\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -20,36 +20,34 @@ use Illuminate\Database\Eloquent\Model;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -70,10 +68,10 @@ use Illuminate\Database\Eloquent\Model;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -82,9 +80,9 @@ use Illuminate\Database\Eloquent\Model;
* @property string $macaddress_not_nullable * @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model
@@ -12,6 +12,6 @@ class UnsetMethod implements ModelHookInterface
{ {
public function run(ModelsCommand $command, Model $model): void public function run(ModelsCommand $command, Model $model): void
{ {
$command->unsetMethod('query'); $command->unsetMethod('newmodelquery');
} }
} }
@@ -71,14 +71,14 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\ModelHooks\Model
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\ModelHooks\Models\Simple *
* *
* @property int $id * @property int $id
* @property-read string $custom * @property-read string $custom
* @method static \Illuminate\Database\Eloquent\Builder|Simple custom($custom) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple custom($custom)
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -0,0 +1,21 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Morphs\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\MorphTo;
class Morphs extends Model
{
public function relationMorphTo(): MorphTo
{
return $this->morphTo();
}
public function nullableRelationMorphTo(): MorphTo
{
return $this->morphTo();
}
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Morphs;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,39 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Morphs\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\MorphTo;
/**
*
*
* @property string $relation_morph_to_type
* @property int $relation_morph_to_id
* @property string|null $nullable_relation_morph_to_type
* @property int|null $nullable_relation_morph_to_id
* @property-read Model|\Eloquent|null $nullableRelationMorphTo
* @property-read Model|\Eloquent $relationMorphTo
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs whereNullableRelationMorphToId($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs whereNullableRelationMorphToType($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs whereRelationMorphToId($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Morphs whereRelationMorphToType($value)
* @mixin \Eloquent
*/
class Morphs extends Model
{
public function relationMorphTo(): MorphTo
{
return $this->morphTo();
}
public function nullableRelationMorphTo(): MorphTo
{
return $this->morphTo();
}
}
@@ -7,13 +7,13 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\PHPStormNoInspec
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\PHPStormNoInspection\Models\Simple *
* *
* @property integer $id * @property int $id
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Simple extends Model class Simple extends Model
@@ -7,13 +7,13 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\PHPStormNoInspec
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\PHPStormNoInspection\Models\Simple *
* *
* @property integer $id * @property int $id
* @method static \Illuminate\Database\Eloquent\Builder|Simple newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Simple query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple query()
* @method static \Illuminate\Database\Eloquent\Builder|Simple whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Simple whereId($value)
* @mixin \Eloquent * @mixin \Eloquent
* @noinspection PhpFullyQualifiedNameUsageInspection * @noinspection PhpFullyQualifiedNameUsageInspection
* @noinspection PhpUnnecessaryFullyQualifiedNameInspection * @noinspection PhpUnnecessaryFullyQualifiedNameInspection
@@ -0,0 +1,18 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models\Pivots\CustomPivot;
use Illuminate\Database\Eloquent\Model;
class ModelWithPivot extends Model
{
public function relationWithCustomPivot()
{
return $this->belongsToMany(ModelwithPivot::class)
->using(CustomPivot::class)
->as('customAccessor');
}
}
@@ -0,0 +1,11 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models\Pivots;
use Illuminate\Database\Eloquent\Relations\Pivot;
class CustomPivot extends Pivot
{
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,48 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models\Pivots\CustomPivot;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @property-read CustomPivot $customAccessor
* @property-read \Illuminate\Database\Eloquent\Collection<int, ModelWithPivot> $relationWithCustomPivot
* @property-read int|null $relation_with_custom_pivot_count
* @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithPivot newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithPivot newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|ModelWithPivot query()
* @mixin \Eloquent
*/
class ModelWithPivot extends Model
{
public function relationWithCustomPivot()
{
return $this->belongsToMany(ModelwithPivot::class)
->using(CustomPivot::class)
->as('customAccessor');
}
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\Pivot\Models\Pivots;
use Illuminate\Database\Eloquent\Relations\Pivot;
/**
*
*
* @method static \Illuminate\Database\Eloquent\Builder<static>|CustomPivot newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|CustomPivot newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|CustomPivot query()
* @mixin \Eloquent
*/
class CustomPivot extends Pivot
{
}
@@ -0,0 +1,13 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\QueryScopes\Models;
class Post extends PostParent
{
public function scopePublic($query)
{
return $query;
}
}
@@ -0,0 +1,15 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\QueryScopes\Models;
use Illuminate\Database\Eloquent\Model;
class PostParent extends Model
{
public function scopeActive($query)
{
return $query;
}
}
@@ -0,0 +1,24 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\QueryScopes;
use Barryvdh\LaravelIdeHelper\Console\ModelsCommand;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\AbstractModelsCommand;
class Test extends AbstractModelsCommand
{
public function test(): void
{
$command = $this->app->make(ModelsCommand::class);
$tester = $this->runCommand($command, [
'--write' => true,
]);
$this->assertSame(0, $tester->getStatusCode());
$this->assertStringContainsString('Written new phpDocBlock to', $tester->getDisplay());
$this->assertMatchesMockedSnapshot();
}
}
@@ -0,0 +1,189 @@
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\QueryScopes\Models;
/**
*
*
* @property int $id
* @property string|null $char_nullable
* @property string $char_not_nullable
* @property string|null $string_nullable
* @property string $string_not_nullable
* @property string|null $text_nullable
* @property string $text_not_nullable
* @property string|null $medium_text_nullable
* @property string $medium_text_not_nullable
* @property string|null $long_text_nullable
* @property string $long_text_not_nullable
* @property int|null $integer_nullable
* @property int $integer_not_nullable
* @property int|null $tiny_integer_nullable
* @property int $tiny_integer_not_nullable
* @property int|null $small_integer_nullable
* @property int $small_integer_not_nullable
* @property int|null $medium_integer_nullable
* @property int $medium_integer_not_nullable
* @property int|null $big_integer_nullable
* @property int $big_integer_not_nullable
* @property int|null $unsigned_integer_nullable
* @property int $unsigned_integer_not_nullable
* @property int|null $unsigned_tiny_integer_nullable
* @property int $unsigned_tiny_integer_not_nullable
* @property int|null $unsigned_small_integer_nullable
* @property int $unsigned_small_integer_not_nullable
* @property int|null $unsigned_medium_integer_nullable
* @property int $unsigned_medium_integer_not_nullable
* @property int|null $unsigned_big_integer_nullable
* @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable
* @property float $float_not_nullable
* @property float|null $double_nullable
* @property float $double_not_nullable
* @property string|null $decimal_nullable
* @property string $decimal_not_nullable
* @property int|null $boolean_nullable
* @property int $boolean_not_nullable
* @property string|null $enum_nullable
* @property string $enum_not_nullable
* @property string|null $json_nullable
* @property string $json_not_nullable
* @property string|null $jsonb_nullable
* @property string $jsonb_not_nullable
* @property string|null $date_nullable
* @property string $date_not_nullable
* @property string|null $datetime_nullable
* @property string $datetime_not_nullable
* @property string|null $datetimetz_nullable
* @property string $datetimetz_not_nullable
* @property string|null $time_nullable
* @property string $time_not_nullable
* @property string|null $timetz_nullable
* @property string $timetz_not_nullable
* @property string|null $timestamp_nullable
* @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable
* @property int|null $year_nullable
* @property int $year_not_nullable
* @property string|null $binary_nullable
* @property string $binary_not_nullable
* @property string|null $uuid_nullable
* @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable
* @property string $ipaddress_not_nullable
* @property string|null $macaddress_nullable
* @property string $macaddress_not_nullable
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post active()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post public()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @mixin \Eloquent
*/
class Post extends PostParent
{
public function scopePublic($query)
{
return $query;
}
}
<?php
declare(strict_types=1);
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\QueryScopes\Models;
use Illuminate\Database\Eloquent\Model;
/**
*
*
* @method static \Illuminate\Database\Eloquent\Builder<static>|PostParent active()
* @method static \Illuminate\Database\Eloquent\Builder<static>|PostParent newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|PostParent newQuery()
* @method static \Illuminate\Database\Eloquent\Builder<static>|PostParent query()
* @mixin \Eloquent
*/
class PostParent extends Model
{
public function scopeActive($query)
{
return $query;
}
}
@@ -8,9 +8,9 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
/** /**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\RelationCountProperties\Models\Post *
* *
* @property integer $id * @property int $id
* @property string|null $char_nullable * @property string|null $char_nullable
* @property string $char_not_nullable * @property string $char_not_nullable
* @property string|null $string_nullable * @property string|null $string_nullable
@@ -21,36 +21,34 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
* @property string $medium_text_not_nullable * @property string $medium_text_not_nullable
* @property string|null $long_text_nullable * @property string|null $long_text_nullable
* @property string $long_text_not_nullable * @property string $long_text_not_nullable
* @property integer|null $integer_nullable * @property int|null $integer_nullable
* @property integer $integer_not_nullable * @property int $integer_not_nullable
* @property integer|null $tiny_integer_nullable * @property int|null $tiny_integer_nullable
* @property integer $tiny_integer_not_nullable * @property int $tiny_integer_not_nullable
* @property integer|null $small_integer_nullable * @property int|null $small_integer_nullable
* @property integer $small_integer_not_nullable * @property int $small_integer_not_nullable
* @property integer|null $medium_integer_nullable * @property int|null $medium_integer_nullable
* @property integer $medium_integer_not_nullable * @property int $medium_integer_not_nullable
* @property integer|null $big_integer_nullable * @property int|null $big_integer_nullable
* @property integer $big_integer_not_nullable * @property int $big_integer_not_nullable
* @property integer|null $unsigned_integer_nullable * @property int|null $unsigned_integer_nullable
* @property integer $unsigned_integer_not_nullable * @property int $unsigned_integer_not_nullable
* @property integer|null $unsigned_tiny_integer_nullable * @property int|null $unsigned_tiny_integer_nullable
* @property integer $unsigned_tiny_integer_not_nullable * @property int $unsigned_tiny_integer_not_nullable
* @property integer|null $unsigned_small_integer_nullable * @property int|null $unsigned_small_integer_nullable
* @property integer $unsigned_small_integer_not_nullable * @property int $unsigned_small_integer_not_nullable
* @property integer|null $unsigned_medium_integer_nullable * @property int|null $unsigned_medium_integer_nullable
* @property integer $unsigned_medium_integer_not_nullable * @property int $unsigned_medium_integer_not_nullable
* @property integer|null $unsigned_big_integer_nullable * @property int|null $unsigned_big_integer_nullable
* @property integer $unsigned_big_integer_not_nullable * @property int $unsigned_big_integer_not_nullable
* @property float|null $float_nullable * @property float|null $float_nullable
* @property float $float_not_nullable * @property float $float_not_nullable
* @property float|null $double_nullable * @property float|null $double_nullable
* @property float $double_not_nullable * @property float $double_not_nullable
* @property string|null $decimal_nullable * @property string|null $decimal_nullable
* @property string $decimal_not_nullable * @property string $decimal_not_nullable
* @property string|null $unsigned_decimal_nullable * @property int|null $boolean_nullable
* @property string $unsigned_decimal_not_nullable * @property int $boolean_not_nullable
* @property integer|null $boolean_nullable
* @property integer $boolean_not_nullable
* @property string|null $enum_nullable * @property string|null $enum_nullable
* @property string $enum_not_nullable * @property string $enum_not_nullable
* @property string|null $json_nullable * @property string|null $json_nullable
@@ -71,10 +69,10 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
* @property string $timestamp_not_nullable * @property string $timestamp_not_nullable
* @property string|null $timestamptz_nullable * @property string|null $timestamptz_nullable
* @property string $timestamptz_not_nullable * @property string $timestamptz_not_nullable
* @property integer|null $year_nullable * @property int|null $year_nullable
* @property integer $year_not_nullable * @property int $year_not_nullable
* @property mixed|null $binary_nullable * @property string|null $binary_nullable
* @property mixed $binary_not_nullable * @property string $binary_not_nullable
* @property string|null $uuid_nullable * @property string|null $uuid_nullable
* @property string $uuid_not_nullable * @property string $uuid_not_nullable
* @property string|null $ipaddress_nullable * @property string|null $ipaddress_nullable
@@ -84,82 +82,80 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
* @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at * @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \Illuminate\Database\Eloquent\Collection<int, Post> $relationHasMany * @property-read \Illuminate\Database\Eloquent\Collection<int, Post> $relationHasMany
* @method static \Illuminate\Database\Eloquent\Builder|Post newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post newQuery() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Post query() * @method static \Illuminate\Database\Eloquent\Builder<static>|Post query()
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBinaryNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBinaryNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereBooleanNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereBooleanNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCharNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCharNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDateNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDateNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDatetimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDatetimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDecimalNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereDoubleNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereDoubleNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereEnumNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereEnumNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereFloatNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereFloatNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereId($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereIpaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereIpaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereJsonbNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereJsonbNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereLongTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereLongTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMacaddressNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMacaddressNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereMediumTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereMediumTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereStringNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereStringNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTextNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTextNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimeNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimeNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestampNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestampNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimestamptzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimestamptzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTimetzNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTimetzNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedBigIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedBigIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedDecimalNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedMediumIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedMediumIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedSmallIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedSmallIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUnsignedTinyIntegerNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUnsignedTinyIntegerNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUpdatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereUuidNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNotNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereUuidNullable($value) * @method static \Illuminate\Database\Eloquent\Builder<static>|Post whereYearNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNotNullable($value)
* @method static \Illuminate\Database\Eloquent\Builder|Post whereYearNullable($value)
* @mixin \Eloquent * @mixin \Eloquent
*/ */
class Post extends Model class Post extends Model

Some files were not shown because too many files have changed in this diff Show More