mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-18 01:57:13 +00:00
Generate noinspections PHPStorm tags (#905)
* Generate noinspections PHPStorm tags * Add comments about PHPStorm noinspection tags * Fix line to long warnings * Add tests for PHPStorm noinspection Co-authored-by: Michał Zgliński <[email protected]>
This commit is contained in:
co-authored by
Michał Zgliński
parent
bef8158d02
commit
dcf76c1a81
@@ -59,6 +59,7 @@ class ModelsCommand extends Command
|
||||
protected $dirs = array();
|
||||
protected $reset;
|
||||
protected $keep_text;
|
||||
protected $phpstorm_noinspections;
|
||||
/**
|
||||
* @var bool[string]
|
||||
*/
|
||||
@@ -97,6 +98,7 @@ class ModelsCommand extends Command
|
||||
$model = $this->argument('model');
|
||||
$ignore = $this->option('ignore');
|
||||
$this->reset = $this->option('reset');
|
||||
$this->phpstorm_noinspections = $this->option('phpstorm-noinspections');
|
||||
if ($this->option('smart-reset')) {
|
||||
$this->keep_text = $this->reset = true;
|
||||
}
|
||||
@@ -155,6 +157,10 @@ class ModelsCommand extends Command
|
||||
array('nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'),
|
||||
array('reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'),
|
||||
array('smart-reset', 'r', InputOption::VALUE_NONE, 'Refresh the properties/methods list, but keep the text'),
|
||||
array('phpstorm-noinspections', 'p', InputOption::VALUE_NONE,
|
||||
'Add PhpFullyQualifiedNameUsageInspection and PhpUnnecessaryFullyQualifiedNameInspection PHPStorm ' .
|
||||
'noinspection tags'
|
||||
),
|
||||
array('ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''),
|
||||
);
|
||||
}
|
||||
@@ -728,6 +734,20 @@ class ModelsCommand extends Command
|
||||
if ($this->write && ! $phpdoc->getTagsByName('mixin')) {
|
||||
$phpdoc->appendTag(Tag::createInstance("@mixin \\Eloquent", $phpdoc));
|
||||
}
|
||||
if ($this->phpstorm_noinspections) {
|
||||
/**
|
||||
* Facades, Eloquent API
|
||||
* @see https://www.jetbrains.com/help/phpstorm/php-fully-qualified-name-usage.html
|
||||
*/
|
||||
$phpdoc->appendTag(Tag::createInstance("@noinspection PhpFullyQualifiedNameUsageInspection", $phpdoc));
|
||||
/**
|
||||
* Relations, other models in the same namespace
|
||||
* @see https://www.jetbrains.com/help/phpstorm/php-unnecessary-fully-qualified-name.html
|
||||
*/
|
||||
$phpdoc->appendTag(
|
||||
Tag::createInstance("@noinspection PhpUnnecessaryFullyQualifiedNameInspection", $phpdoc)
|
||||
);
|
||||
}
|
||||
|
||||
$serializer = new DocBlockSerializer();
|
||||
$serializer->getDocComment($phpdoc);
|
||||
|
||||
Reference in New Issue
Block a user