From 8852b1ca9d2d0df39c3c97fb9f49fd5d0939b736 Mon Sep 17 00:00:00 2001 From: Steve Guns Date: Sun, 11 Feb 2018 19:09:33 +0100 Subject: [PATCH] Added "smart-reset": Reset properties/methods, but keep the docBlock text, if any --- src/Console/ModelsCommand.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Console/ModelsCommand.php b/src/Console/ModelsCommand.php index 7359a84..ee56810 100644 --- a/src/Console/ModelsCommand.php +++ b/src/Console/ModelsCommand.php @@ -56,6 +56,7 @@ class ModelsCommand extends Command protected $write = false; protected $dirs = array(); protected $reset; + protected $keep_text; /** * @var bool[string] */ @@ -86,6 +87,9 @@ class ModelsCommand extends Command $model = $this->argument('model'); $ignore = $this->option('ignore'); $this->reset = $this->option('reset'); + 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); //If filename is default and Write is not specified, ask what to do @@ -136,6 +140,7 @@ class ModelsCommand extends Command array('write', 'W', InputOption::VALUE_NONE, 'Write to Model file'), 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, 'Remove the original phpdocs properties/methods, but keep the text'), array('ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''), ); } @@ -582,6 +587,11 @@ class ModelsCommand extends Command if ($this->reset) { $phpdoc = new DocBlock('', new Context($namespace)); + if ($this->keep_text) { + $phpdoc->setText( + (new DocBlock($reflection, new Context($namespace)))->getText() + ); + } } else { $phpdoc = new DocBlock($reflection, new Context($namespace)); }