BCTokens
Token arrays related utility methods.
PHPCS provides a number of static token arrays in the \PHP_CodeSniffer\Util\Tokens class. Some of these token arrays will not be available in older PHPCS versions. Some will not contain the same set of tokens across PHPCS versions.
This class is a compatibility layer to allow for retrieving these token arrays with a consistent token content across PHPCS versions. The one caveat is that the token constants do need to be available.
Recommended usage: Only use the methods in this class when needed. I.e. when your sniff unit tests indicate a PHPCS cross-version compatibility issue related to inconsistent token arrays.
All PHPCS token arrays are supported, though only a limited number of them are different across PHPCS versions.
The names of the PHPCS native token arrays translate one-on-one to the methods in this class:
PHP_CodeSniffer\Util\Tokens::$emptyTokens
=>PHPCSUtils\BackCompat\BCTokens::emptyTokens()
PHP_CodeSniffer\Util\Tokens::$operators
=>PHPCSUtils\BackCompat\BCTokens::operators()
- ... etc
The order of the tokens in the arrays may differ between the PHPCS native token arrays and the token arrays returned by this class.
Tags
Table of Contents
- __callStatic() : array
- Handle calls to (undeclared) methods for token arrays which haven't received any changes since PHPCS 2.6.0.
- arithmeticTokens() : array
- Tokens that represent arithmetic operators.
- assignmentTokens() : array
- Tokens that represent assignment operators.
- blockOpeners() : array
- booleanOperators() : array
- bracketTokens() : array
- castTokens() : array
- commentTokens() : array
- comparisonTokens() : array
- Tokens that represent comparison operators.
- emptyTokens() : array
- equalityTokens() : array
- functionNameTokens() : array
- Tokens that represent the names of called functions.
- heredocTokens() : array
- includeTokens() : array
- methodPrefixes() : array
- ooScopeTokens() : array
- Tokens that open class and object scopes.
- operators() : array
- Tokens that perform operations.
- parenthesisOpeners() : array
- Token types that open parentheses.
- phpcsCommentTokens() : array
- Tokens that are comments containing PHPCS instructions.
- scopeModifiers() : array
- scopeOpeners() : array
- stringTokens() : array
- textStringTokens() : array
- Tokens that represent text strings.
Methods
__callStatic()
Handle calls to (undeclared) methods for token arrays which haven't received any changes since PHPCS 2.6.0.
public
static __callStatic(string $name, array $args) : array
Parameters
- $name : string
-
The name of the method which has been called.
- $args : array
-
Any arguments passed to the method. Unused as none of the methods take arguments.
Tags
Return values
array —<int|string> => <int|string> Token array
arithmeticTokens()
Tokens that represent arithmetic operators.
public
static arithmeticTokens() : array
Retrieve the PHPCS arithmetic tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 0.5.0.
- PHPCS 2.9.0: The PHP 5.6
T_POW
token was added to the array. TheT_POW
token was introduced in PHPCS 2.4.0.
Tags
Return values
array —<int|string> => <int|string> Token array or an empty array for PHPCS versions in which the PHPCS native comment tokens did not exist yet.
assignmentTokens()
Tokens that represent assignment operators.
public
static assignmentTokens() : array
Retrieve the PHPCS assignment tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 0.0.5.
- PHPCS 2.9.0: The PHP 7.4
T_COALESCE_EQUAL
token was added to the array. TheT_COALESCE_EQUAL
token was introduced in PHPCS 2.8.1. - PHPCS 3.2.0: The JS
T_ZSR_EQUAL
token was added to the array. TheT_ZSR_EQUAL
token was introduced in PHPCS 2.8.0.
Tags
Return values
array —<int|string> => <int|string> Token array.
blockOpeners()
public
static blockOpeners() : array
Tokens that open code blocks.
Return values
array —booleanOperators()
public
static booleanOperators() : array
Tokens that perform boolean operations.
Return values
array —bracketTokens()
public
static bracketTokens() : array
Tokens that represent brackets and parenthesis.
Return values
array —castTokens()
public
static castTokens() : array
Tokens that represent type casting.
Return values
array —commentTokens()
public
static commentTokens() : array
Tokens that are comments.
Return values
array —comparisonTokens()
Tokens that represent comparison operators.
public
static comparisonTokens() : array
Retrieve the PHPCS comparison tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 0.5.0.
- PHPCS 2.9.0: The PHP 7.0
T_COALESCE
token was added to the array. TheT_COALESCE
token was introduced in PHPCS 2.6.1. - PHPCS 2.9.0: The PHP 7.0
T_SPACESHIP
token was added to the array. TheT_SPACESHIP
token was introduced in PHPCS 2.5.1.
Tags
Return values
array —<int|string> => <int|string> Token array.
emptyTokens()
public
static emptyTokens() : array
Tokens that don't represent code.
Return values
array —equalityTokens()
public
static equalityTokens() : array
Tokens that represent equality comparisons.
Return values
array —functionNameTokens()
Tokens that represent the names of called functions.
public
static functionNameTokens() : array
Retrieve the PHPCS function name tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 2.3.3.
- PHPCS 3.1.0:
T_SELF
andT_STATIC
added to the array.
Tags
Return values
array —<int|string> => <int|string> Token array.
heredocTokens()
public
static heredocTokens() : array
Tokens that make up a heredoc string.
Return values
array —includeTokens()
public
static includeTokens() : array
Tokens that include files.
Return values
array —methodPrefixes()
public
static methodPrefixes() : array
Tokens that can prefix a method name.
Return values
array —ooScopeTokens()
Tokens that open class and object scopes.
public
static ooScopeTokens() : array
Retrieve the OO scope tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 3.1.0.
Tags
Return values
array —<int|string> => <int|string> Token array.
operators()
Tokens that perform operations.
public
static operators() : array
Retrieve the PHPCS operator tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 0.0.5.
- PHPCS 2.6.1: The PHP 7.0
T_COALESCE
token was backfilled and added to the array. - PHPCS 2.8.1: The PHP 7.4
T_COALESCE_EQUAL
token was backfilled and (incorrectly) added to the array. - PHPCS 2.9.0: The
T_COALESCE_EQUAL
token was removed from the array.
Tags
Return values
array —<int|string> => <int|string> Token array.
parenthesisOpeners()
Token types that open parentheses.
public
static parenthesisOpeners() : array
Retrieve the PHPCS parenthesis openers tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 0.0.5.
- PHPCS 3.5.0:
T_LIST
andT_ANON_CLASS
added to the array.
Note: While T_LIST
and T_ANON_CLASS
will be included in the return value for this
method, the associated parentheses will not have the 'parenthesis_owner'
index set
until PHPCS 3.5.0. Use the \PHPCSUtils\Utils\Parentheses::getOwner()
or \PHPCSUtils\Utils\Parentheses::hasOwner() methods if you need to check for
a T_LIST
or T_ANON_CLASS
parentheses owner.
Tags
Return values
array —<int|string> => <int|string> Token array.
phpcsCommentTokens()
Tokens that are comments containing PHPCS instructions.
public
static phpcsCommentTokens() : array
Retrieve the PHPCS comment tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 3.2.3. The PHPCS comment tokens, however, were introduced in PHPCS 3.2.0.
Tags
Return values
array —<string> => <string> Token array or an empty array for PHPCS versions in which the PHPCS native annotation tokens did not exist yet.
scopeModifiers()
public
static scopeModifiers() : array
Tokens that represent scope modifiers.
Return values
array —scopeOpeners()
public
static scopeOpeners() : array
Tokens that are allowed to open scopes.
Return values
array —stringTokens()
public
static stringTokens() : array
Tokens that represent strings.
Note that T_STRINGS
are NOT represented in this list as this list
is about text strings.
Return values
array —textStringTokens()
Tokens that represent text strings.
public
static textStringTokens() : array
Retrieve the PHPCS text string tokens array in a cross-version compatible manner.
Changelog for the PHPCS native array:
- Introduced in PHPCS 2.9.0.
Tags
Return values
array —<int|string> => <int|string> Token array.