class OneObjectStructurePerFileSniff
Hierarchy
- class \PHP_CodeSniffer\Standards\Generic\Sniffs\Files\OneObjectStructurePerFileSniff implements \PHP_CodeSniffer\Sniffs\Sniff
Expanded class hierarchy of OneObjectStructurePerFileSniff
File
-
vendor/
squizlabs/ php_codesniffer/ src/ Standards/ Generic/ Sniffs/ Files/ OneObjectStructurePerFileSniff.php, line 15
Namespace
PHP_CodeSniffer\Standards\Generic\Sniffs\FilesView source
class OneObjectStructurePerFileSniff implements Sniff {
/**
* Returns an array of tokens this test wants to listen for.
*
* @return array<int|string>
*/
public function register() {
return [
T_CLASS,
T_INTERFACE,
T_TRAIT,
T_ENUM,
];
}
//end register()
/**
* Processes this sniff, when one of its tokens is encountered.
*
* @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned.
* @param int $stackPtr The position of the current token in
* the stack passed in $tokens.
*
* @return void
*/
public function process(File $phpcsFile, $stackPtr) {
$tokens = $phpcsFile->getTokens();
$start = $stackPtr + 1;
if (isset($tokens[$stackPtr]['scope_closer']) === true) {
$start = $tokens[$stackPtr]['scope_closer'] + 1;
}
$nextClass = $phpcsFile->findNext($this->register(), $start);
if ($nextClass !== false) {
$error = 'Only one object structure is allowed in a file';
$phpcsFile->addError($error, $nextClass, 'MultipleFound');
}
}
//end process()
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
OneObjectStructurePerFileSniff::process | public | function | Processes this sniff, when one of its tokens is encountered. | Overrides Sniff::process |
OneObjectStructurePerFileSniff::register | public | function | Returns an array of tokens this test wants to listen for. | Overrides Sniff::register |