From 2f7ec76b64483f617c8ebdf79d85ce5c0a6ea268 Mon Sep 17 00:00:00 2001 From: Michael Moll Date: Thu, 21 Aug 2025 16:45:35 +0200 Subject: [PATCH] Allow more commenting in BlankLineBeforeReturnSniff closes GH-203 --- .../Formatting/BlankLineBeforeReturnSniff.php | 4 ++++ .../BlankLineBeforeReturnUnitTest.inc | 24 +++++++++++++++++++ .../BlankLineBeforeReturnUnitTest.inc.fixed | 24 +++++++++++++++++++ 3 files changed, 52 insertions(+) diff --git a/Symfony/Sniffs/Formatting/BlankLineBeforeReturnSniff.php b/Symfony/Sniffs/Formatting/BlankLineBeforeReturnSniff.php index 8773d59..4d2c914 100644 --- a/Symfony/Sniffs/Formatting/BlankLineBeforeReturnSniff.php +++ b/Symfony/Sniffs/Formatting/BlankLineBeforeReturnSniff.php @@ -79,8 +79,12 @@ public function process(File $phpcsFile, $stackPtr) $spaceTokens = [ 'T_WHITESPACE', 'T_COMMENT', + 'T_DOC_COMMENT_OPEN_TAG', 'T_DOC_COMMENT_CLOSE_TAG', + 'T_DOC_COMMENT_TAG', + 'T_DOC_COMMENT_STRING', 'T_DOC_COMMENT_WHITESPACE', + 'T_PHPCS_IGNORE', ]; while ($current >= 0 && $tokens[$current]['line'] >= $previousLine) { diff --git a/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc b/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc index 90dd845..4db2df2 100644 --- a/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc +++ b/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc @@ -37,6 +37,30 @@ function invalidFunctionReturnOne() return; } +function validFunctionReturnWithPhpcsIgnore1(): string +{ + // phpcs:ignore Foobar.Whatever.Rule + return foobar(1); +} + +function validFunctionReturnWithPhpcsIgnore2(): string +{ + /* phpcs:ignore Foobar.Whatever.Rule */ + return foobar(1); +} + +function validFunctionReturnWithPhpcsIgnore3(): string +{ + /** phpcs:ignore Foobar.Whatever.Rule */ + return foobar(1); +} + +function validFunctionReturnWithVariableDoc(): string +{ + /** @psalm-var ClassName $variable */ + return foobar(1); +} + switch ($condition) { case 'foo': return true; diff --git a/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc.fixed b/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc.fixed index a581405..ed3c91b 100644 --- a/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc.fixed +++ b/Symfony/Tests/Formatting/BlankLineBeforeReturnUnitTest.inc.fixed @@ -38,6 +38,30 @@ function invalidFunctionReturnOne() return; } +function validFunctionReturnWithPhpcsIgnore1(): string +{ + // phpcs:ignore Foobar.Whatever.Rule + return foobar(1); +} + +function validFunctionReturnWithPhpcsIgnore2(): string +{ + /* phpcs:ignore Foobar.Whatever.Rule */ + return foobar(1); +} + +function validFunctionReturnWithPhpcsIgnore3(): string +{ + /** phpcs:ignore Foobar.Whatever.Rule */ + return foobar(1); +} + +function validFunctionReturnWithVariableDoc(): string +{ + /** @psalm-var ClassName $variable */ + return foobar(1); +} + switch ($condition) { case 'foo': return true;