diff --git a/src/Standards/Squiz/Sniffs/Commenting/BlockCommentSniff.php b/src/Standards/Squiz/Sniffs/Commenting/BlockCommentSniff.php index 9a565123b7..c117d2ed5b 100644 --- a/src/Standards/Squiz/Sniffs/Commenting/BlockCommentSniff.php +++ b/src/Standards/Squiz/Sniffs/Commenting/BlockCommentSniff.php @@ -66,7 +66,7 @@ public function process(File $phpcsFile, $stackPtr) return; } - // If this is a function/class/interface doc block comment, skip it. + // If this is a function/class/interface/enum/property/const doc block comment, skip it. // We are only interested in inline doc block comments. if ($tokens[$stackPtr]['code'] === T_DOC_COMMENT_OPEN_TAG) { $nextToken = $stackPtr; @@ -80,16 +80,14 @@ public function process(File $phpcsFile, $stackPtr) break; } while (true); - $ignore = [ + $ignore = Tokens::$scopeModifiers; + $ignore += [ T_CLASS => true, T_INTERFACE => true, T_TRAIT => true, T_ENUM => true, T_FUNCTION => true, - T_PUBLIC => true, - T_PRIVATE => true, T_FINAL => true, - T_PROTECTED => true, T_STATIC => true, T_ABSTRACT => true, T_CONST => true, diff --git a/src/Standards/Squiz/Sniffs/Commenting/DocCommentAlignmentSniff.php b/src/Standards/Squiz/Sniffs/Commenting/DocCommentAlignmentSniff.php index 332de5660b..13099c8b57 100644 --- a/src/Standards/Squiz/Sniffs/Commenting/DocCommentAlignmentSniff.php +++ b/src/Standards/Squiz/Sniffs/Commenting/DocCommentAlignmentSniff.php @@ -52,7 +52,7 @@ public function process(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); - // We are only interested in function/class/interface doc block comments. + // We are only interested in function/class/interface/enum/property/const doc block comments. $ignore = Tokens::$emptyTokens; if ($phpcsFile->tokenizerType === 'JS') { $ignore[] = T_EQUAL; @@ -61,15 +61,14 @@ public function process(File $phpcsFile, $stackPtr) } $nextToken = $phpcsFile->findNext($ignore, ($stackPtr + 1), null, true); - $ignore = [ + + $ignore = Tokens::$scopeModifiers; + $ignore += [ T_CLASS => true, T_INTERFACE => true, T_ENUM => true, T_ENUM_CASE => true, T_FUNCTION => true, - T_PUBLIC => true, - T_PRIVATE => true, - T_PROTECTED => true, T_STATIC => true, T_ABSTRACT => true, T_FINAL => true, diff --git a/src/Standards/Squiz/Sniffs/Commenting/VariableCommentSniff.php b/src/Standards/Squiz/Sniffs/Commenting/VariableCommentSniff.php index b9925757f4..afb1be03c5 100644 --- a/src/Standards/Squiz/Sniffs/Commenting/VariableCommentSniff.php +++ b/src/Standards/Squiz/Sniffs/Commenting/VariableCommentSniff.php @@ -12,6 +12,7 @@ use PHP_CodeSniffer\Files\File; use PHP_CodeSniffer\Sniffs\AbstractVariableSniff; use PHP_CodeSniffer\Util\Common; +use PHP_CodeSniffer\Util\Tokens; class VariableCommentSniff extends AbstractVariableSniff { @@ -28,11 +29,9 @@ class VariableCommentSniff extends AbstractVariableSniff */ public function processMemberVar(File $phpcsFile, $stackPtr) { - $tokens = $phpcsFile->getTokens(); - $ignore = [ - T_PUBLIC => T_PUBLIC, - T_PRIVATE => T_PRIVATE, - T_PROTECTED => T_PROTECTED, + $tokens = $phpcsFile->getTokens(); + $ignore = Tokens::$scopeModifiers; + $ignore += [ T_VAR => T_VAR, T_STATIC => T_STATIC, T_READONLY => T_READONLY, diff --git a/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc b/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc index db8d43d7d1..0e5d87acd6 100644 --- a/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc +++ b/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc @@ -314,3 +314,20 @@ class FinalProperties { */ final int $prop = 1; } + +class AsymVisibility { + /** + * Comment should be ignored. + */ + public(set) int $prop = 1; + + /** + * Comment should be ignored. + */ + protected(set) int $prop = 1; + + /** + * Comment should be ignored. + */ + private(set) int $prop = 1; +} diff --git a/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc.fixed b/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc.fixed index 69463f9c10..0935d4ae9b 100644 --- a/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc.fixed +++ b/src/Standards/Squiz/Tests/Commenting/BlockCommentUnitTest.inc.fixed @@ -316,3 +316,20 @@ class FinalProperties { */ final int $prop = 1; } + +class AsymVisibility { + /** + * Comment should be ignored. + */ + public(set) int $prop = 1; + + /** + * Comment should be ignored. + */ + protected(set) int $prop = 1; + + /** + * Comment should be ignored. + */ + private(set) int $prop = 1; +} diff --git a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc index af7614efda..e8b1356971 100644 --- a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc +++ b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc @@ -114,3 +114,20 @@ final class FinalClassWithFinalProp */ final $property = 10; } + +class AsymVisibility { + /** + * Stars should be aligned. + */ + public(set) int $prop = 1; + + /** + * Stars should be aligned. + */ + protected(set) int $prop = 1; + + /** + * Stars should be aligned. + */ + private(set) int $prop = 1; +} diff --git a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc.fixed b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc.fixed index 9f664922f4..0b8a68e8c7 100644 --- a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc.fixed +++ b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.inc.fixed @@ -114,3 +114,20 @@ final class FinalClassWithFinalProp */ final $property = 10; } + +class AsymVisibility { + /** + * Stars should be aligned. + */ + public(set) int $prop = 1; + + /** + * Stars should be aligned. + */ + protected(set) int $prop = 1; + + /** + * Stars should be aligned. + */ + private(set) int $prop = 1; +} diff --git a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.php b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.php index eb9d7543e6..eac7a9ec16 100644 --- a/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.php +++ b/src/Standards/Squiz/Tests/Commenting/DocCommentAlignmentUnitTest.php @@ -63,7 +63,12 @@ public function getErrorList($testFile='') $errors[112] = 1; $errors[113] = 1; $errors[114] = 1; - } + + $errors[120] = 1; + $errors[121] = 1; + $errors[125] = 1; + $errors[126] = 1; + }//end if return $errors; diff --git a/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc b/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc index b849029e6d..bddb2d178a 100644 --- a/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc +++ b/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc @@ -469,3 +469,20 @@ class PHP84FinalProperties { */ final int $hasDocblock; } + +class AsymVisibility { + /** + * @var integer + */ + public(set) int $hasDocblockA; + + /** + * @var integer + */ + public protected(set) int $hasDocblockB; + + /** + * @var integer + */ + private(set) protected int $hasDocblockC; +} diff --git a/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc.fixed b/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc.fixed index 0a57d89e06..2a40e3a070 100644 --- a/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc.fixed +++ b/src/Standards/Squiz/Tests/Commenting/VariableCommentUnitTest.inc.fixed @@ -469,3 +469,20 @@ class PHP84FinalProperties { */ final int $hasDocblock; } + +class AsymVisibility { + /** + * @var integer + */ + public(set) int $hasDocblockA; + + /** + * @var integer + */ + public protected(set) int $hasDocblockB; + + /** + * @var integer + */ + private(set) protected int $hasDocblockC; +}