3
* Squiz_Sniffs_Operators_ValidLogicalOperatorsSniff.
8
* @package PHP_CodeSniffer
9
* @author Greg Sherwood <gsherwood@squiz.net>
10
* @author Marc McIntyre <mmcintyre@squiz.net>
11
* @copyright 2006 Squiz Pty Ltd (ABN 77 084 670 600)
12
* @license http://matrix.squiz.net/developer/tools/php_cs/licence BSD Licence
13
* @version CVS: $Id: ValidLogicalOperatorsSniff.php,v 1.6 2007/10/18 01:14:14 squiz Exp $
14
* @link http://pear.php.net/package/PHP_CodeSniffer
18
* Squiz_Sniffs_Operators_ValidLogicalOperatorsSniff.
20
* Checks to ensure that the logical operators 'and' and 'or' are not used.
21
* Use the && and || operators instead.
24
* @package PHP_CodeSniffer
25
* @author Greg Sherwood <gsherwood@squiz.net>
26
* @author Marc McIntyre <mmcintyre@squiz.net>
27
* @copyright 2006 Squiz Pty Ltd (ABN 77 084 670 600)
28
* @license http://matrix.squiz.net/developer/tools/php_cs/licence BSD Licence
29
* @version Release: 1.1.0
30
* @link http://pear.php.net/package/PHP_CodeSniffer
32
class Squiz_Sniffs_Operators_ValidLogicalOperatorsSniff implements PHP_CodeSniffer_Sniff
37
* Returns an array of tokens this test wants to listen for.
41
public function register()
53
* Processes this test, when one of its tokens is encountered.
55
* @param PHP_CodeSniffer_File $phpcsFile The current file being scanned.
56
* @param int $stackPtr The position of the current token in the
57
* stack passed in $tokens.
61
public function process(PHP_CodeSniffer_File $phpcsFile, $stackPtr)
63
$tokens = $phpcsFile->getTokens();
65
$replacements = array(
71
$operator = $tokens[$stackPtr]['content'];
72
if (isset($replacements[$operator]) === false) {
76
$replacement = $replacements[$operator];
77
$error = "Logical operator \"$operator\" is prohibited; use \"$replacement\" instead";
78
$phpcsFile->addError($error, $stackPtr);