From 38c9f80ebb961f0a4c723aa9cb644ed5f08d0c1d Mon Sep 17 00:00:00 2001 From: Perreal Guillaume <guillaume.perreal@irstea.fr> Date: Fri, 19 Apr 2019 11:52:35 +0200 Subject: [PATCH] =?UTF-8?q?Permet=20de=20surcharger=20ponctuellement=20des?= =?UTF-8?q?=20r=C3=A8gles=20avec=20->setRule=20et=20->setRules.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Config.php | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/Config.php b/src/Config.php index e445a9c..dbbb8d3 100644 --- a/src/Config.php +++ b/src/Config.php @@ -41,6 +41,9 @@ final class Config extends PhpCsFixerConfig */ private $docHeaderfile = '.docheader'; + /** @var array<string, mixed> */ + private $ruleOverrides = []; + /** * Set cacheFile. * @@ -66,7 +69,7 @@ final class Config extends PhpCsFixerConfig */ public function getRules() { - return array_merge( + return array_replace( $this->ruleSets(), [ // Configuration && overrides @@ -100,10 +103,28 @@ final class Config extends PhpCsFixerConfig // Risky 'is_null' => ['use_yoda_style' => false], 'non_printable_character' => ['use_escape_sequences_in_strings' => true], - ] : [] + ] : [], + $this->ruleOverrides ); } + /** + * @param string $rule + * @param mixed $setting + */ + public function setRule(string $rule, $setting) + { + $this->ruleOverrides[$rule] = $setting; + } + + /** + * {@inheritDoc} + */ + public function setRules(array $rules) + { + $this->ruleOverrides = array_replace($this->ruleOverrides, $rules); + } + /** * @return string */ -- GitLab