Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php namespace PHP_CodeSniffer\Standards\PSR12\Sniffs\Traits; use PHP_CodeSniffer\Files\..

Decoded Output download

<?php
 namespace PHP_CodeSniffer\Standards\PSR12\Sniffs\Traits; use PHP_CodeSniffer\Files\File; use PHP_CodeSniffer\Sniffs\Sniff; use PHP_CodeSniffer\Util\Tokens; class UseDeclarationSniff implements Sniff { public function register() { return array(T_USE); } public function process(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $conditions = $tokens[$stackPtr]["conditions"]; end($conditions); if (isset(Tokens::$ooScopeTokens[current($conditions)]) === false) { return; } $ooToken = key($conditions); $opener = $tokens[$ooToken]["scope_opener"]; $useTokens = array($stackPtr); for ($i = $stackPtr + 1; $i < $tokens[$ooToken]["scope_closer"]; $i++) { if ($tokens[$i]["code"] === T_USE) { $useTokens[] = $i; } if (isset($tokens[$i]["scope_closer"]) === true) { $i = $tokens[$i]["scope_closer"]; } } $numUseTokens = count($useTokens); foreach ($useTokens as $usePos => $useToken) { if ($usePos === 0) { $lastValidContent = $useToken; for ($i = $useToken - 1; $i > $opener; $i--) { if ($tokens[$i]["code"] === T_WHITESPACE && ($tokens[$i - 1]["line"] === $tokens[$i]["line"] || $tokens[$i + 1]["line"] === $tokens[$i]["line"])) { continue; } if (isset(Tokens::$commentTokens[$tokens[$i]["code"]]) === true) { if ($tokens[$i]["code"] === T_DOC_COMMENT_CLOSE_TAG) { $i = $tokens[$i]["comment_opener"]; } $lastValidContent = $i; continue; } break; } if ($tokens[$lastValidContent]["line"] !== $tokens[$opener]["line"] + 1) { $error = "The first trait import statement must be declared on the first non-comment line after the %s opening brace"; $data = array(strtolower($tokens[$ooToken]["content"])); $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $useToken - 1, $opener - 1, true); if ($tokens[$prev]["line"] === $tokens[$opener]["line"]) { $fix = $phpcsFile->addFixableError($error, $useToken, "UseAfterBrace", $data); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $useToken - 1; $i > $opener; $i--) { if ($tokens[$i]["line"] === $tokens[$opener]["line"]) { break; } if ($tokens[$i]["line"] === $tokens[$useToken]["line"]) { continue; } if ($tokens[$i]["code"] === T_WHITESPACE && $tokens[$i - 1]["line"] !== $tokens[$i]["line"] && $tokens[$i + 1]["line"] !== $tokens[$i]["line"]) { $phpcsFile->fixer->replaceToken($i, ''); } if (isset(Tokens::$commentTokens[$tokens[$i]["code"]]) === true) { if ($tokens[$i]["code"] === T_DOC_COMMENT_CLOSE_TAG) { $i = $tokens[$i]["comment_opener"]; } $lastValidContent = $i; } } $phpcsFile->fixer->endChangeset(); } } else { $phpcsFile->addError($error, $useToken, "UseAfterBrace", $data); } } } else { $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $useToken - 1, null, true); if ($prev !== false && $tokens[$prev]["line"] === $tokens[$useToken]["line"]) { $error = "Each imported trait must be on its own line"; $prevNonWs = $phpcsFile->findPrevious(T_WHITESPACE, $useToken - 1, null, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $useToken, "SpacingBeforeImport"); } else { $fix = $phpcsFile->addFixableError($error, $useToken, "SpacingBeforeImport"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $useToken - 1; $x > $prev; $x--) { if ($tokens[$x]["line"] === $tokens[$useToken]["line"]) { continue; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($prev); if ($tokens[$prev]["line"] === $tokens[$useToken]["line"]) { if ($tokens[$useToken - 1]["code"] === T_WHITESPACE) { $phpcsFile->fixer->replaceToken($useToken - 1, ''); } $padding = str_repeat(" ", $tokens[$useTokens[0]]["column"] - 1); $phpcsFile->fixer->addContent($prev, $padding); } $phpcsFile->fixer->endChangeset(); } } } } if (isset($tokens[$useToken]["scope_opener"]) === true) { $this->processUseGroup($phpcsFile, $useToken); $end = $tokens[$useToken]["scope_closer"]; } else { $this->processUseStatement($phpcsFile, $useToken); $end = $phpcsFile->findNext(T_SEMICOLON, $useToken + 1); if ($end === false) { return; } } if ($usePos === $numUseTokens - 1) { $next = $phpcsFile->findNext(T_WHITESPACE, $end + 1, null, true); if ($next === $tokens[$ooToken]["scope_closer"]) { $closer = $tokens[$ooToken]["scope_closer"]; if ($tokens[$closer]["line"] > $tokens[$end]["line"] + 1) { $error = "There must be no blank line after the last trait import statement at the bottom of a %s"; $data = array(strtolower($tokens[$ooToken]["content"])); $fix = $phpcsFile->addFixableError($error, $end, "BlankLineAfterLastUse", $data); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $end + 1; $i < $closer; $i++) { if ($tokens[$i]["line"] === $tokens[$end]["line"]) { continue; } if ($tokens[$i]["line"] === $tokens[$closer]["line"]) { break; } $phpcsFile->fixer->replaceToken($i, ''); } $phpcsFile->fixer->endChangeset(); } } } else { if ($tokens[$next]["code"] !== T_USE) { for ($next = $end + 1; $next < $tokens[$ooToken]["scope_closer"]; $next++) { if ($tokens[$next]["code"] === T_WHITESPACE) { continue; } if (isset(Tokens::$commentTokens[$tokens[$next]["code"]]) === true && $tokens[$next]["line"] === $tokens[$end]["line"]) { continue; } break; } if ($tokens[$next]["line"] <= $tokens[$end]["line"] + 1) { $error = "There must be a blank line following the last trait import statement"; $fix = $phpcsFile->addFixableError($error, $end, "NoBlankLineAfterUse"); if ($fix === true) { if ($tokens[$next]["line"] === $tokens[$useToken]["line"]) { $phpcsFile->fixer->addContentBefore($next, $phpcsFile->eolChar . $phpcsFile->eolChar); } else { for ($i = $next - 1; $i > $end; $i--) { if ($tokens[$i]["line"] !== $tokens[$next]["line"]) { break; } } $phpcsFile->fixer->addNewlineBefore($i + 1); } } } } } } else { $next = $phpcsFile->findNext(Tokens::$emptyTokens, $end + 1, null, true); if ($next !== $useTokens[$usePos + 1]) { $error = "Imported traits must be grouped together"; $phpcsFile->addError($error, $useTokens[$usePos + 1], "NotGrouped"); } } } return $tokens[$ooToken]["scope_closer"]; } protected function processUseGroup(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $opener = $tokens[$stackPtr]["scope_opener"]; $closer = $tokens[$stackPtr]["scope_closer"]; if ($tokens[$opener]["line"] !== $tokens[$stackPtr]["line"]) { $error = "The opening brace of a trait import statement must be on the same line as the USE keyword"; $canFix = true; for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["line"] !== $tokens[$i + 1]["line"] && $tokens[$i]["code"] !== T_WHITESPACE) { $canFix = false; break; } } if ($canFix === true) { $fix = $phpcsFile->addFixableError($error, $opener, "OpenBraceNewLine"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["line"] !== $tokens[$i + 1]["line"]) { $phpcsFile->fixer->replaceToken($i, " "); } } $phpcsFile->fixer->endChangeset(); } } else { $phpcsFile->addError($error, $opener, "OpenBraceNewLine"); } } $error = "Expected 1 space before opening brace in trait import statement; %s found"; if ($tokens[$opener - 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $opener, "SpaceBeforeOpeningBrace", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($opener, " "); } } else { if ($tokens[$opener - 1]["content"] !== " ") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $opener - 1, null, true); if ($tokens[$prev]["line"] !== $tokens[$opener]["line"]) { $found = "newline"; } else { $found = $tokens[$opener - 1]["length"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $opener, "SpaceBeforeOpeningBrace", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $opener - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($opener, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($opener - 1, " "); } } } } $next = $phpcsFile->findNext(Tokens::$emptyTokens, $opener + 1, $closer - 1, true); if ($next !== false && $tokens[$next]["line"] !== $tokens[$opener]["line"] + 1) { $error = "First trait conflict resolution statement must be on the line after the opening brace"; $nextNonWs = $phpcsFile->findNext(T_WHITESPACE, $opener + 1, $closer - 1, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $opener, "SpaceAfterOpeningBrace"); } else { $fix = $phpcsFile->addFixableError($error, $opener, "SpaceAfterOpeningBrace"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $opener + 1; $x < $next; $x++) { if ($tokens[$x]["line"] === $tokens[$next]["line"]) { break; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($opener); $phpcsFile->fixer->endChangeset(); } } } for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["code"] !== T_COMMA) { continue; } if ($tokens[$i - 1]["code"] === T_WHITESPACE) { $error = "Expected no space before comma in trait import statement; %s found"; $data = array($tokens[$i - 1]["length"]); $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeComma", $data); if ($fix === true) { $phpcsFile->fixer->replaceToken($i - 1, ''); } } $error = "Expected 1 space after comma in trait import statement; %s found"; if ($tokens[$i + 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterComma", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, " "); } } else { if ($tokens[$i + 1]["content"] !== " ") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $opener, true); if ($tokens[$next]["line"] !== $tokens[$i]["line"]) { $found = "newline"; } else { $found = $tokens[$i + 1]["length"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterComma", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, " "); } } } } } for ($i = $opener + 1; $i < $closer; $i++) { if ($tokens[$i]["code"] === T_INSTEADOF) { $error = "Expected 1 space before INSTEADOF in trait import statement; %s found"; if ($tokens[$i - 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeInsteadof", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($i, " "); } } else { if ($tokens[$i - 1]["content"] !== " ") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $i - 1, $opener, true); if ($tokens[$prev]["line"] !== $tokens[$i]["line"]) { $found = "newline"; } else { $found = $tokens[$i - 1]["length"]; } $data = array($found); $prevNonWs = $phpcsFile->findPrevious(Tokens::$emptyTokens, $i - 1, $opener, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $i, "SpaceBeforeInsteadof", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeInsteadof", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $i - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($i, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i - 1, " "); } } } } } $error = "Expected 1 space after INSTEADOF in trait import statement; %s found"; if ($tokens[$i + 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterInsteadof", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, " "); } } else { if ($tokens[$i + 1]["content"] !== " ") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer, true); if ($tokens[$next]["line"] !== $tokens[$i]["line"]) { $found = "newline"; } else { $found = $tokens[$i + 1]["length"]; } $data = array($found); $nextNonWs = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "SpaceAfterInsteadof", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterInsteadof", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, " "); } } } } } } if ($tokens[$i]["code"] === T_AS) { $error = "Expected 1 space before AS in trait import statement; %s found"; if ($tokens[$i - 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeAs", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($i, " "); } } else { if ($tokens[$i - 1]["content"] !== " ") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $i - 1, $opener, true); if ($tokens[$prev]["line"] !== $tokens[$i]["line"]) { $found = "newline"; } else { $found = $tokens[$i - 1]["length"]; } $data = array($found); $prevNonWs = $phpcsFile->findPrevious(Tokens::$emptyTokens, $i - 1, $opener, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $i, "SpaceBeforeAs", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeAs", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $i - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($i, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i - 1, " "); } } } } } $error = "Expected 1 space after AS in trait import statement; %s found"; if ($tokens[$i + 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterAs", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, " "); } } else { if ($tokens[$i + 1]["content"] !== " ") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer, true); if ($tokens[$next]["line"] !== $tokens[$i]["line"]) { $found = "newline"; } else { $found = $tokens[$i + 1]["length"]; } $data = array($found); $nextNonWs = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "SpaceAfterAs", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "SpaceAfterAs", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, " "); } } } } } } if ($tokens[$i]["code"] === T_SEMICOLON) { if ($tokens[$i - 1]["code"] === T_WHITESPACE) { $error = "Expected no space before semicolon in trait import statement; %s found"; $data = array($tokens[$i - 1]["length"]); $fix = $phpcsFile->addFixableError($error, $i, "SpaceBeforeSemicolon", $data); if ($fix === true) { $phpcsFile->fixer->replaceToken($i - 1, ''); } } $next = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer - 1, true); if ($next !== false && $tokens[$next]["line"] === $tokens[$i]["line"]) { $error = "Each trait conflict resolution statement must be on a line by itself"; $nextNonWs = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer - 1, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "ConflictSameLine"); } else { $fix = $phpcsFile->addFixableError($error, $i, "ConflictSameLine"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); if ($tokens[$i + 1]["code"] === T_WHITESPACE) { $phpcsFile->fixer->replaceToken($i + 1, ''); } $phpcsFile->fixer->addNewline($i); $phpcsFile->fixer->endChangeset(); } } } } } $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $closer - 1, $opener + 1, true); if ($prev !== false && $tokens[$prev]["line"] !== $tokens[$closer]["line"] - 1) { $error = "Closing brace must be on the line after the last trait conflict resolution statement"; $prevNonWs = $phpcsFile->findPrevious(T_WHITESPACE, $closer - 1, $opener + 1, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $closer, "SpaceBeforeClosingBrace"); } else { $fix = $phpcsFile->addFixableError($error, $closer, "SpaceBeforeClosingBrace"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $closer - 1; $x > $prev; $x--) { if ($tokens[$x]["line"] === $tokens[$closer]["line"]) { continue; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($prev); $phpcsFile->fixer->endChangeset(); } } } } protected function processUseStatement(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $error = "Expected 1 space after USE in trait import statement; %s found"; if ($tokens[$stackPtr + 1]["code"] !== T_WHITESPACE) { $data = array("0"); $fix = $phpcsFile->addFixableError($error, $stackPtr, "SpaceAfterAs", $data); if ($fix === true) { $phpcsFile->fixer->addContent($stackPtr, " "); } } else { if ($tokens[$stackPtr + 1]["content"] !== " ") { $next = $phpcsFile->findNext(T_WHITESPACE, $stackPtr + 1, null, true); if ($tokens[$next]["line"] !== $tokens[$stackPtr]["line"]) { $found = "newline"; } else { $found = $tokens[$stackPtr + 1]["length"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $stackPtr, "SpaceAfterAs", $data); if ($fix === true) { if ($found === "newline") { $phpcsFile->fixer->beginChangeset(); for ($x = $stackPtr + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($stackPtr, " "); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($stackPtr + 1, " "); } } } } $next = $phpcsFile->findNext(array(T_COMMA, T_SEMICOLON), $stackPtr + 1); if ($next !== false && $tokens[$next]["code"] === T_COMMA) { $error = "Each imported trait must have its own "use" import statement"; $fix = $phpcsFile->addFixableError($error, $next, "MultipleImport"); if ($fix === true) { $padding = str_repeat(" ", $tokens[$stackPtr]["column"] - 1); $phpcsFile->fixer->replaceToken($next, ";" . $phpcsFile->eolChar . $padding . "use "); } } } } ?>

Did this file decode correctly?

Original Code

<?php
 namespace PHP_CodeSniffer\Standards\PSR12\Sniffs\Traits; use PHP_CodeSniffer\Files\File; use PHP_CodeSniffer\Sniffs\Sniff; use PHP_CodeSniffer\Util\Tokens; class UseDeclarationSniff implements Sniff { public function register() { return array(T_USE); } public function process(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $conditions = $tokens[$stackPtr]["\143\x6f\156\144\151\164\x69\157\x6e\x73"]; end($conditions); if (isset(Tokens::$ooScopeTokens[current($conditions)]) === false) { return; } $ooToken = key($conditions); $opener = $tokens[$ooToken]["\163\143\x6f\160\145\x5f\157\160\145\156\x65\162"]; $useTokens = array($stackPtr); for ($i = $stackPtr + 1; $i < $tokens[$ooToken]["\x73\143\x6f\x70\x65\137\x63\154\x6f\163\x65\162"]; $i++) { if ($tokens[$i]["\x63\x6f\144\x65"] === T_USE) { $useTokens[] = $i; } if (isset($tokens[$i]["\x73\143\x6f\x70\145\x5f\x63\154\157\x73\x65\x72"]) === true) { $i = $tokens[$i]["\x73\143\157\160\x65\x5f\x63\154\157\x73\145\x72"]; } } $numUseTokens = count($useTokens); foreach ($useTokens as $usePos => $useToken) { if ($usePos === 0) { $lastValidContent = $useToken; for ($i = $useToken - 1; $i > $opener; $i--) { if ($tokens[$i]["\x63\157\144\x65"] === T_WHITESPACE && ($tokens[$i - 1]["\154\151\x6e\145"] === $tokens[$i]["\154\151\156\145"] || $tokens[$i + 1]["\154\151\156\145"] === $tokens[$i]["\154\151\x6e\145"])) { continue; } if (isset(Tokens::$commentTokens[$tokens[$i]["\x63\x6f\x64\x65"]]) === true) { if ($tokens[$i]["\143\157\x64\x65"] === T_DOC_COMMENT_CLOSE_TAG) { $i = $tokens[$i]["\143\x6f\x6d\155\x65\x6e\x74\137\x6f\160\145\156\145\162"]; } $lastValidContent = $i; continue; } break; } if ($tokens[$lastValidContent]["\x6c\151\156\x65"] !== $tokens[$opener]["\154\151\156\145"] + 1) { $error = "\124\x68\x65\40\x66\151\162\163\164\x20\164\162\x61\151\164\40\151\155\160\x6f\162\164\40\x73\164\x61\164\x65\155\x65\156\164\x20\x6d\165\x73\x74\x20\x62\x65\x20\144\145\x63\154\x61\x72\145\x64\x20\157\x6e\40\x74\150\145\x20\x66\x69\162\x73\x74\40\x6e\157\x6e\x2d\143\x6f\x6d\x6d\145\x6e\164\40\x6c\x69\156\x65\40\141\x66\164\145\162\40\164\x68\145\40\x25\x73\x20\x6f\160\145\156\151\156\x67\40\x62\162\x61\143\145"; $data = array(strtolower($tokens[$ooToken]["\143\157\156\x74\145\156\164"])); $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $useToken - 1, $opener - 1, true); if ($tokens[$prev]["\x6c\151\156\145"] === $tokens[$opener]["\154\151\156\x65"]) { $fix = $phpcsFile->addFixableError($error, $useToken, "\x55\163\x65\x41\146\164\145\x72\102\x72\x61\143\x65", $data); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $useToken - 1; $i > $opener; $i--) { if ($tokens[$i]["\x6c\151\x6e\145"] === $tokens[$opener]["\x6c\151\x6e\145"]) { break; } if ($tokens[$i]["\154\x69\x6e\145"] === $tokens[$useToken]["\154\x69\156\x65"]) { continue; } if ($tokens[$i]["\x63\157\x64\145"] === T_WHITESPACE && $tokens[$i - 1]["\154\151\156\x65"] !== $tokens[$i]["\x6c\151\156\x65"] && $tokens[$i + 1]["\x6c\151\x6e\145"] !== $tokens[$i]["\x6c\x69\156\x65"]) { $phpcsFile->fixer->replaceToken($i, ''); } if (isset(Tokens::$commentTokens[$tokens[$i]["\143\157\x64\145"]]) === true) { if ($tokens[$i]["\143\157\144\145"] === T_DOC_COMMENT_CLOSE_TAG) { $i = $tokens[$i]["\x63\157\155\155\145\x6e\164\137\157\x70\145\x6e\x65\x72"]; } $lastValidContent = $i; } } $phpcsFile->fixer->endChangeset(); } } else { $phpcsFile->addError($error, $useToken, "\125\163\x65\x41\x66\x74\145\x72\x42\x72\141\143\145", $data); } } } else { $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $useToken - 1, null, true); if ($prev !== false && $tokens[$prev]["\154\x69\156\x65"] === $tokens[$useToken]["\154\x69\x6e\x65"]) { $error = "\105\141\x63\150\x20\x69\x6d\x70\x6f\x72\164\145\144\x20\164\x72\141\151\x74\40\x6d\x75\163\164\x20\142\x65\40\x6f\156\40\151\x74\x73\40\157\x77\156\x20\x6c\x69\x6e\x65"; $prevNonWs = $phpcsFile->findPrevious(T_WHITESPACE, $useToken - 1, null, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $useToken, "\123\160\141\143\x69\156\147\x42\x65\146\157\162\x65\111\x6d\x70\157\x72\x74"); } else { $fix = $phpcsFile->addFixableError($error, $useToken, "\123\160\141\143\x69\156\147\x42\x65\146\x6f\162\145\111\x6d\160\x6f\x72\x74"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $useToken - 1; $x > $prev; $x--) { if ($tokens[$x]["\x6c\x69\x6e\145"] === $tokens[$useToken]["\x6c\x69\156\x65"]) { continue; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($prev); if ($tokens[$prev]["\x6c\151\156\x65"] === $tokens[$useToken]["\x6c\151\x6e\x65"]) { if ($tokens[$useToken - 1]["\143\157\x64\145"] === T_WHITESPACE) { $phpcsFile->fixer->replaceToken($useToken - 1, ''); } $padding = str_repeat("\x20", $tokens[$useTokens[0]]["\143\x6f\x6c\x75\x6d\x6e"] - 1); $phpcsFile->fixer->addContent($prev, $padding); } $phpcsFile->fixer->endChangeset(); } } } } if (isset($tokens[$useToken]["\163\143\x6f\160\145\137\x6f\160\145\x6e\x65\x72"]) === true) { $this->processUseGroup($phpcsFile, $useToken); $end = $tokens[$useToken]["\163\x63\x6f\160\145\137\143\x6c\x6f\x73\x65\x72"]; } else { $this->processUseStatement($phpcsFile, $useToken); $end = $phpcsFile->findNext(T_SEMICOLON, $useToken + 1); if ($end === false) { return; } } if ($usePos === $numUseTokens - 1) { $next = $phpcsFile->findNext(T_WHITESPACE, $end + 1, null, true); if ($next === $tokens[$ooToken]["\163\x63\x6f\x70\x65\137\143\x6c\157\x73\145\x72"]) { $closer = $tokens[$ooToken]["\x73\143\157\x70\145\x5f\x63\x6c\x6f\x73\x65\162"]; if ($tokens[$closer]["\x6c\x69\156\145"] > $tokens[$end]["\154\x69\156\x65"] + 1) { $error = "\124\150\145\162\145\x20\x6d\x75\163\x74\x20\x62\x65\x20\156\157\x20\x62\x6c\x61\x6e\x6b\x20\154\151\156\145\40\141\146\x74\145\162\x20\x74\150\145\40\x6c\141\163\x74\x20\164\x72\x61\x69\x74\x20\151\155\160\x6f\162\164\x20\x73\164\x61\164\x65\x6d\145\156\164\40\141\x74\40\164\x68\145\x20\142\157\164\164\157\155\40\x6f\x66\x20\141\x20\45\163"; $data = array(strtolower($tokens[$ooToken]["\x63\157\156\164\145\156\x74"])); $fix = $phpcsFile->addFixableError($error, $end, "\102\154\x61\x6e\153\x4c\x69\156\x65\101\x66\x74\145\x72\x4c\141\x73\x74\125\x73\145", $data); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $end + 1; $i < $closer; $i++) { if ($tokens[$i]["\154\x69\x6e\x65"] === $tokens[$end]["\154\151\x6e\x65"]) { continue; } if ($tokens[$i]["\154\x69\156\145"] === $tokens[$closer]["\154\x69\x6e\145"]) { break; } $phpcsFile->fixer->replaceToken($i, ''); } $phpcsFile->fixer->endChangeset(); } } } else { if ($tokens[$next]["\143\x6f\x64\x65"] !== T_USE) { for ($next = $end + 1; $next < $tokens[$ooToken]["\163\x63\x6f\160\x65\137\x63\154\x6f\163\145\x72"]; $next++) { if ($tokens[$next]["\x63\157\144\x65"] === T_WHITESPACE) { continue; } if (isset(Tokens::$commentTokens[$tokens[$next]["\x63\157\x64\x65"]]) === true && $tokens[$next]["\154\151\156\145"] === $tokens[$end]["\x6c\x69\x6e\145"]) { continue; } break; } if ($tokens[$next]["\154\151\x6e\145"] <= $tokens[$end]["\154\151\156\145"] + 1) { $error = "\124\150\x65\162\145\x20\155\x75\x73\x74\x20\142\145\40\141\x20\x62\x6c\x61\156\x6b\40\154\x69\156\x65\40\146\x6f\x6c\x6c\157\x77\151\x6e\147\40\164\x68\145\x20\154\x61\x73\x74\40\164\162\141\151\164\x20\151\x6d\160\x6f\162\164\40\163\x74\x61\x74\x65\155\x65\156\164"; $fix = $phpcsFile->addFixableError($error, $end, "\x4e\157\102\x6c\141\x6e\x6b\x4c\x69\156\x65\x41\146\x74\145\x72\125\x73\145"); if ($fix === true) { if ($tokens[$next]["\154\151\156\145"] === $tokens[$useToken]["\x6c\151\x6e\145"]) { $phpcsFile->fixer->addContentBefore($next, $phpcsFile->eolChar . $phpcsFile->eolChar); } else { for ($i = $next - 1; $i > $end; $i--) { if ($tokens[$i]["\154\x69\x6e\145"] !== $tokens[$next]["\154\x69\x6e\x65"]) { break; } } $phpcsFile->fixer->addNewlineBefore($i + 1); } } } } } } else { $next = $phpcsFile->findNext(Tokens::$emptyTokens, $end + 1, null, true); if ($next !== $useTokens[$usePos + 1]) { $error = "\111\155\x70\x6f\x72\164\145\144\40\x74\x72\141\151\164\163\40\x6d\x75\x73\164\40\142\x65\40\147\162\157\165\x70\145\x64\40\x74\x6f\147\x65\164\x68\145\162"; $phpcsFile->addError($error, $useTokens[$usePos + 1], "\x4e\x6f\164\x47\x72\157\x75\160\145\x64"); } } } return $tokens[$ooToken]["\x73\x63\x6f\x70\145\137\143\154\x6f\x73\x65\162"]; } protected function processUseGroup(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $opener = $tokens[$stackPtr]["\163\x63\x6f\160\x65\137\157\160\x65\156\145\162"]; $closer = $tokens[$stackPtr]["\163\x63\x6f\x70\x65\137\x63\154\x6f\x73\145\x72"]; if ($tokens[$opener]["\154\151\156\x65"] !== $tokens[$stackPtr]["\x6c\151\156\145"]) { $error = "\124\150\145\40\x6f\160\x65\x6e\x69\x6e\147\x20\142\x72\x61\143\x65\x20\157\146\40\x61\40\x74\162\x61\151\x74\40\x69\155\160\x6f\162\x74\x20\x73\x74\x61\x74\145\155\145\156\164\40\x6d\165\x73\164\x20\142\x65\40\157\156\40\x74\150\x65\x20\x73\x61\x6d\145\x20\x6c\x69\x6e\x65\40\x61\163\40\x74\x68\x65\40\x55\123\105\40\x6b\x65\171\167\x6f\x72\144"; $canFix = true; for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["\154\x69\x6e\x65"] !== $tokens[$i + 1]["\x6c\x69\x6e\145"] && $tokens[$i]["\143\157\x64\x65"] !== T_WHITESPACE) { $canFix = false; break; } } if ($canFix === true) { $fix = $phpcsFile->addFixableError($error, $opener, "\117\x70\145\156\x42\162\141\143\145\x4e\145\x77\x4c\x69\156\x65"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["\154\151\x6e\145"] !== $tokens[$i + 1]["\154\151\156\145"]) { $phpcsFile->fixer->replaceToken($i, "\40"); } } $phpcsFile->fixer->endChangeset(); } } else { $phpcsFile->addError($error, $opener, "\x4f\x70\145\156\x42\162\x61\x63\x65\116\145\x77\114\151\156\145"); } } $error = "\x45\170\160\145\x63\x74\145\x64\x20\x31\40\163\160\141\x63\145\40\142\x65\x66\157\162\145\40\x6f\x70\x65\x6e\x69\x6e\147\x20\142\162\x61\143\x65\x20\151\156\40\x74\162\141\151\x74\x20\x69\x6d\160\x6f\x72\x74\40\163\164\141\164\x65\x6d\x65\x6e\164\73\x20\x25\x73\40\146\157\x75\156\144"; if ($tokens[$opener - 1]["\x63\x6f\144\145"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $opener, "\123\x70\141\143\145\x42\145\x66\x6f\x72\x65\x4f\160\145\x6e\151\156\147\102\x72\141\x63\145", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($opener, "\40"); } } else { if ($tokens[$opener - 1]["\143\157\156\x74\145\x6e\164"] !== "\40") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $opener - 1, null, true); if ($tokens[$prev]["\x6c\x69\x6e\x65"] !== $tokens[$opener]["\154\x69\x6e\x65"]) { $found = "\156\x65\167\x6c\x69\156\x65"; } else { $found = $tokens[$opener - 1]["\154\x65\x6e\147\x74\x68"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $opener, "\123\x70\141\143\145\x42\145\x66\x6f\162\x65\117\160\x65\x6e\x69\x6e\x67\102\x72\141\143\x65", $data); if ($fix === true) { if ($found === "\156\145\x77\154\x69\156\145") { $phpcsFile->fixer->beginChangeset(); for ($x = $opener - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($opener, "\40"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($opener - 1, "\x20"); } } } } $next = $phpcsFile->findNext(Tokens::$emptyTokens, $opener + 1, $closer - 1, true); if ($next !== false && $tokens[$next]["\154\151\156\145"] !== $tokens[$opener]["\x6c\x69\x6e\x65"] + 1) { $error = "\106\151\162\x73\164\x20\x74\162\141\x69\x74\40\143\157\156\146\154\x69\143\x74\x20\x72\x65\163\x6f\x6c\x75\164\151\x6f\156\40\163\164\141\x74\145\x6d\145\156\164\40\155\x75\163\x74\x20\x62\x65\x20\157\156\40\164\150\145\x20\x6c\x69\156\x65\x20\x61\146\164\x65\162\40\164\x68\145\40\157\160\x65\156\x69\156\147\40\142\x72\x61\143\145"; $nextNonWs = $phpcsFile->findNext(T_WHITESPACE, $opener + 1, $closer - 1, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $opener, "\x53\x70\141\143\145\x41\146\x74\145\162\117\160\145\x6e\151\x6e\x67\x42\x72\x61\143\x65"); } else { $fix = $phpcsFile->addFixableError($error, $opener, "\123\x70\141\143\x65\101\x66\164\x65\x72\117\160\145\x6e\151\156\147\x42\x72\141\x63\145"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $opener + 1; $x < $next; $x++) { if ($tokens[$x]["\154\151\156\x65"] === $tokens[$next]["\154\x69\x6e\x65"]) { break; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($opener); $phpcsFile->fixer->endChangeset(); } } } for ($i = $stackPtr + 1; $i < $opener; $i++) { if ($tokens[$i]["\143\x6f\x64\x65"] !== T_COMMA) { continue; } if ($tokens[$i - 1]["\143\x6f\x64\145"] === T_WHITESPACE) { $error = "\105\170\x70\x65\143\164\x65\x64\40\x6e\157\40\163\x70\141\x63\x65\40\142\x65\x66\157\162\145\40\x63\x6f\x6d\x6d\141\x20\x69\156\40\164\x72\141\151\x74\40\151\x6d\x70\x6f\162\164\40\x73\x74\x61\x74\145\155\x65\156\x74\x3b\x20\x25\x73\40\146\157\165\156\144"; $data = array($tokens[$i - 1]["\x6c\145\x6e\x67\x74\150"]); $fix = $phpcsFile->addFixableError($error, $i, "\123\160\x61\x63\x65\x42\x65\x66\157\x72\x65\x43\157\x6d\x6d\141", $data); if ($fix === true) { $phpcsFile->fixer->replaceToken($i - 1, ''); } } $error = "\x45\170\x70\145\143\x74\x65\144\40\x31\40\x73\160\141\x63\145\40\141\146\164\x65\x72\x20\x63\157\x6d\155\141\x20\x69\156\x20\164\x72\x61\151\x74\40\x69\155\160\157\162\x74\40\x73\164\141\164\145\155\145\x6e\164\x3b\40\x25\x73\x20\146\157\x75\156\144"; if ($tokens[$i + 1]["\x63\x6f\x64\x65"] !== T_WHITESPACE) { $data = array("\60"); $fix = $phpcsFile->addFixableError($error, $i, "\x53\160\x61\x63\145\101\146\164\145\162\x43\x6f\155\155\141", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, "\x20"); } } else { if ($tokens[$i + 1]["\143\x6f\x6e\164\145\156\x74"] !== "\x20") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $opener, true); if ($tokens[$next]["\x6c\151\156\x65"] !== $tokens[$i]["\154\151\x6e\145"]) { $found = "\x6e\x65\167\x6c\x69\156\x65"; } else { $found = $tokens[$i + 1]["\x6c\x65\156\147\x74\x68"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $i, "\123\160\x61\x63\x65\101\146\164\x65\162\103\x6f\x6d\155\x61", $data); if ($fix === true) { if ($found === "\156\x65\x77\154\151\156\x65") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, "\x20"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, "\40"); } } } } } for ($i = $opener + 1; $i < $closer; $i++) { if ($tokens[$i]["\143\157\x64\145"] === T_INSTEADOF) { $error = "\x45\x78\160\145\x63\x74\x65\x64\x20\61\x20\x73\160\x61\143\145\x20\x62\x65\x66\x6f\x72\145\x20\111\x4e\123\x54\x45\101\104\117\106\40\x69\x6e\40\164\162\x61\151\x74\x20\x69\x6d\x70\157\162\164\x20\x73\x74\141\164\145\155\x65\156\x74\73\x20\45\x73\40\x66\157\165\x6e\x64"; if ($tokens[$i - 1]["\x63\157\x64\145"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $i, "\x53\160\x61\x63\x65\x42\x65\x66\157\x72\x65\111\156\x73\164\x65\x61\x64\x6f\x66", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($i, "\x20"); } } else { if ($tokens[$i - 1]["\143\x6f\x6e\164\x65\156\x74"] !== "\x20") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $i - 1, $opener, true); if ($tokens[$prev]["\x6c\151\x6e\x65"] !== $tokens[$i]["\x6c\x69\x6e\x65"]) { $found = "\156\x65\x77\154\x69\x6e\145"; } else { $found = $tokens[$i - 1]["\x6c\x65\x6e\147\x74\150"]; } $data = array($found); $prevNonWs = $phpcsFile->findPrevious(Tokens::$emptyTokens, $i - 1, $opener, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $i, "\x53\x70\141\143\145\x42\x65\146\x6f\x72\145\111\156\163\x74\145\x61\x64\157\146", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "\x53\x70\x61\x63\x65\102\x65\x66\157\x72\145\111\156\163\164\x65\x61\144\x6f\x66", $data); if ($fix === true) { if ($found === "\x6e\x65\x77\154\151\156\145") { $phpcsFile->fixer->beginChangeset(); for ($x = $i - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($i, "\x20"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i - 1, "\40"); } } } } } $error = "\x45\170\x70\145\x63\164\145\x64\40\x31\x20\163\x70\141\x63\145\40\x61\x66\x74\x65\162\40\x49\116\123\124\x45\x41\x44\117\106\x20\x69\156\40\164\162\141\151\x74\40\x69\x6d\x70\157\x72\x74\x20\163\x74\x61\164\x65\155\x65\156\164\x3b\40\x25\163\x20\x66\x6f\x75\156\x64"; if ($tokens[$i + 1]["\x63\157\144\145"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $i, "\x53\x70\x61\143\x65\101\x66\x74\x65\x72\111\x6e\x73\x74\145\x61\x64\157\146", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, "\40"); } } else { if ($tokens[$i + 1]["\x63\157\156\x74\x65\156\x74"] !== "\x20") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer, true); if ($tokens[$next]["\x6c\x69\156\x65"] !== $tokens[$i]["\154\x69\156\x65"]) { $found = "\x6e\x65\167\154\151\x6e\145"; } else { $found = $tokens[$i + 1]["\154\x65\156\x67\164\x68"]; } $data = array($found); $nextNonWs = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "\x53\x70\141\x63\x65\101\x66\x74\x65\x72\x49\x6e\163\164\145\141\144\x6f\146", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "\123\160\x61\x63\x65\x41\146\x74\145\162\111\156\163\x74\x65\141\x64\x6f\146", $data); if ($fix === true) { if ($found === "\x6e\x65\167\154\x69\x6e\145") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, "\40"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, "\40"); } } } } } } if ($tokens[$i]["\x63\x6f\144\145"] === T_AS) { $error = "\x45\x78\x70\145\x63\x74\145\x64\x20\x31\x20\x73\160\141\x63\145\x20\x62\145\146\x6f\x72\x65\x20\x41\x53\40\151\156\x20\x74\162\x61\x69\x74\x20\151\x6d\x70\157\x72\164\x20\163\x74\x61\x74\x65\x6d\x65\156\164\73\x20\x25\x73\40\146\x6f\x75\x6e\x64"; if ($tokens[$i - 1]["\143\157\144\x65"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $i, "\123\x70\141\x63\145\102\x65\x66\x6f\x72\145\101\163", $data); if ($fix === true) { $phpcsFile->fixer->addContentBefore($i, "\x20"); } } else { if ($tokens[$i - 1]["\143\x6f\156\x74\145\156\x74"] !== "\x20") { $prev = $phpcsFile->findPrevious(T_WHITESPACE, $i - 1, $opener, true); if ($tokens[$prev]["\x6c\151\156\x65"] !== $tokens[$i]["\x6c\x69\x6e\x65"]) { $found = "\x6e\145\x77\x6c\151\x6e\x65"; } else { $found = $tokens[$i - 1]["\x6c\145\156\x67\x74\x68"]; } $data = array($found); $prevNonWs = $phpcsFile->findPrevious(Tokens::$emptyTokens, $i - 1, $opener, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $i, "\x53\160\x61\143\x65\x42\145\x66\157\162\x65\101\x73", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "\123\x70\141\x63\x65\x42\x65\146\x6f\x72\x65\101\x73", $data); if ($fix === true) { if ($found === "\156\x65\167\154\x69\156\x65") { $phpcsFile->fixer->beginChangeset(); for ($x = $i - 1; $x > $prev; $x--) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContentBefore($i, "\x20"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i - 1, "\40"); } } } } } $error = "\105\x78\x70\x65\x63\164\x65\144\x20\61\40\163\x70\x61\x63\x65\x20\x61\x66\x74\x65\x72\x20\x41\123\x20\x69\156\40\164\x72\141\x69\164\x20\x69\x6d\x70\x6f\162\x74\x20\x73\164\x61\164\145\155\145\x6e\x74\x3b\40\x25\163\40\x66\x6f\165\156\x64"; if ($tokens[$i + 1]["\143\x6f\144\x65"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $i, "\x53\x70\141\x63\x65\x41\146\164\x65\x72\101\x73", $data); if ($fix === true) { $phpcsFile->fixer->addContent($i, "\x20"); } } else { if ($tokens[$i + 1]["\x63\157\x6e\164\145\x6e\x74"] !== "\x20") { $next = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer, true); if ($tokens[$next]["\x6c\151\156\145"] !== $tokens[$i]["\154\151\x6e\x65"]) { $found = "\156\145\x77\154\151\x6e\x65"; } else { $found = $tokens[$i + 1]["\x6c\145\x6e\147\164\x68"]; } $data = array($found); $nextNonWs = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "\123\x70\141\143\145\x41\146\164\x65\162\101\163", $data); } else { $fix = $phpcsFile->addFixableError($error, $i, "\123\160\x61\143\145\x41\146\164\x65\162\101\163", $data); if ($fix === true) { if ($found === "\156\145\x77\154\151\156\x65") { $phpcsFile->fixer->beginChangeset(); for ($x = $i + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($i, "\40"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($i + 1, "\x20"); } } } } } } if ($tokens[$i]["\143\x6f\x64\145"] === T_SEMICOLON) { if ($tokens[$i - 1]["\143\x6f\x64\x65"] === T_WHITESPACE) { $error = "\105\x78\160\145\143\164\145\x64\40\x6e\x6f\40\163\x70\141\x63\x65\x20\142\x65\x66\157\x72\145\40\163\145\155\151\x63\x6f\x6c\157\156\x20\151\x6e\40\164\x72\141\151\164\40\151\x6d\160\x6f\x72\164\40\163\164\141\164\x65\x6d\x65\156\x74\x3b\40\45\163\40\146\157\x75\x6e\144"; $data = array($tokens[$i - 1]["\154\145\x6e\147\164\x68"]); $fix = $phpcsFile->addFixableError($error, $i, "\x53\x70\141\143\x65\x42\145\x66\x6f\162\x65\x53\145\x6d\151\x63\x6f\x6c\157\x6e", $data); if ($fix === true) { $phpcsFile->fixer->replaceToken($i - 1, ''); } } $next = $phpcsFile->findNext(Tokens::$emptyTokens, $i + 1, $closer - 1, true); if ($next !== false && $tokens[$next]["\x6c\x69\x6e\x65"] === $tokens[$i]["\154\x69\x6e\x65"]) { $error = "\x45\141\143\150\40\164\x72\x61\x69\x74\x20\x63\x6f\x6e\146\x6c\151\x63\x74\40\162\x65\163\157\x6c\x75\164\x69\157\156\40\x73\x74\x61\x74\x65\x6d\x65\x6e\x74\x20\155\x75\163\164\x20\142\145\x20\157\x6e\40\141\x20\x6c\151\156\145\x20\x62\171\x20\x69\x74\163\145\x6c\x66"; $nextNonWs = $phpcsFile->findNext(T_WHITESPACE, $i + 1, $closer - 1, true); if ($nextNonWs !== $next) { $phpcsFile->addError($error, $i, "\x43\157\x6e\146\154\x69\x63\x74\123\141\x6d\145\114\x69\x6e\x65"); } else { $fix = $phpcsFile->addFixableError($error, $i, "\103\x6f\x6e\146\x6c\x69\x63\x74\x53\x61\x6d\145\114\151\156\145"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); if ($tokens[$i + 1]["\x63\x6f\144\145"] === T_WHITESPACE) { $phpcsFile->fixer->replaceToken($i + 1, ''); } $phpcsFile->fixer->addNewline($i); $phpcsFile->fixer->endChangeset(); } } } } } $prev = $phpcsFile->findPrevious(Tokens::$emptyTokens, $closer - 1, $opener + 1, true); if ($prev !== false && $tokens[$prev]["\154\x69\156\145"] !== $tokens[$closer]["\x6c\x69\x6e\x65"] - 1) { $error = "\x43\x6c\x6f\163\151\156\x67\x20\x62\x72\x61\143\145\40\x6d\165\163\x74\40\x62\x65\x20\157\156\x20\164\150\145\x20\x6c\x69\156\x65\x20\x61\146\x74\x65\x72\40\164\150\x65\40\x6c\x61\163\x74\40\164\x72\x61\151\164\40\143\x6f\156\x66\154\x69\x63\164\40\162\145\163\157\x6c\x75\164\151\x6f\x6e\40\163\164\x61\x74\x65\155\x65\156\x74"; $prevNonWs = $phpcsFile->findPrevious(T_WHITESPACE, $closer - 1, $opener + 1, true); if ($prevNonWs !== $prev) { $phpcsFile->addError($error, $closer, "\123\160\x61\x63\145\x42\x65\146\157\x72\x65\x43\x6c\157\x73\151\156\147\x42\x72\x61\143\x65"); } else { $fix = $phpcsFile->addFixableError($error, $closer, "\123\160\x61\x63\145\x42\145\146\x6f\x72\145\x43\x6c\x6f\x73\x69\x6e\x67\x42\x72\141\143\x65"); if ($fix === true) { $phpcsFile->fixer->beginChangeset(); for ($x = $closer - 1; $x > $prev; $x--) { if ($tokens[$x]["\154\151\156\145"] === $tokens[$closer]["\x6c\x69\156\145"]) { continue; } $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addNewline($prev); $phpcsFile->fixer->endChangeset(); } } } } protected function processUseStatement(File $phpcsFile, $stackPtr) { $tokens = $phpcsFile->getTokens(); $error = "\x45\x78\160\145\143\164\x65\x64\x20\x31\40\163\160\141\x63\145\x20\x61\x66\164\x65\162\x20\x55\123\105\x20\x69\x6e\x20\x74\x72\x61\x69\x74\x20\x69\x6d\160\x6f\162\164\x20\163\x74\141\164\145\x6d\145\x6e\164\x3b\x20\x25\163\x20\146\157\x75\156\x64"; if ($tokens[$stackPtr + 1]["\x63\x6f\x64\x65"] !== T_WHITESPACE) { $data = array("\x30"); $fix = $phpcsFile->addFixableError($error, $stackPtr, "\123\160\141\143\x65\101\146\164\x65\x72\x41\x73", $data); if ($fix === true) { $phpcsFile->fixer->addContent($stackPtr, "\x20"); } } else { if ($tokens[$stackPtr + 1]["\143\157\x6e\164\145\156\x74"] !== "\x20") { $next = $phpcsFile->findNext(T_WHITESPACE, $stackPtr + 1, null, true); if ($tokens[$next]["\x6c\151\x6e\x65"] !== $tokens[$stackPtr]["\x6c\151\x6e\x65"]) { $found = "\156\145\x77\154\151\x6e\x65"; } else { $found = $tokens[$stackPtr + 1]["\154\145\156\147\164\150"]; } $data = array($found); $fix = $phpcsFile->addFixableError($error, $stackPtr, "\123\160\x61\x63\145\101\146\164\x65\162\101\x73", $data); if ($fix === true) { if ($found === "\x6e\x65\x77\x6c\x69\156\x65") { $phpcsFile->fixer->beginChangeset(); for ($x = $stackPtr + 1; $x < $next; $x++) { $phpcsFile->fixer->replaceToken($x, ''); } $phpcsFile->fixer->addContent($stackPtr, "\x20"); $phpcsFile->fixer->endChangeset(); } else { $phpcsFile->fixer->replaceToken($stackPtr + 1, "\40"); } } } } $next = $phpcsFile->findNext(array(T_COMMA, T_SEMICOLON), $stackPtr + 1); if ($next !== false && $tokens[$next]["\143\x6f\144\145"] === T_COMMA) { $error = "\105\x61\x63\x68\40\151\155\160\157\x72\164\145\144\x20\164\162\x61\151\164\40\x6d\x75\163\x74\40\150\141\x76\x65\40\151\164\x73\40\157\x77\156\x20\x22\165\x73\145\42\x20\x69\x6d\160\157\162\164\x20\x73\x74\x61\x74\145\x6d\145\156\164"; $fix = $phpcsFile->addFixableError($error, $next, "\x4d\165\154\x74\x69\x70\x6c\145\111\x6d\160\157\x72\x74"); if ($fix === true) { $padding = str_repeat("\x20", $tokens[$stackPtr]["\143\x6f\154\x75\x6d\x6e"] - 1); $phpcsFile->fixer->replaceToken($next, "\73" . $phpcsFile->eolChar . $padding . "\165\x73\x65\x20"); } } } }

Function Calls

None

Variables

None

Stats

MD5 d6dec1c4850e15f53761aebe0dc2a5e4
Eval Count 0
Decode Time 222 ms