$commentTokens = array(
'//' => null,
'/*' => '*/',
'/**' => '*/',
)
[line 238]
A list tokens that start and end comments.
$endScopeTokens = array(
T_CLOSE_CURLY_BRACKET => T_CLOSE_CURLY_BRACKET,
T_BREAK => T_BREAK,
)
[line 146]
A list of tokens that end the scope.
This array is just a unique collection of the end tokens from the _scopeOpeners array. The data is duplicated here to save time during parsing of the file.
$scopeOpeners = array(
T_IF => array(
'start' => array(T_OPEN_CURLY_BRACKET => T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>false,'shared'=>false,'with'=>array(),),T_TRY=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>true,'shared'=>false,'with'=>array(),),T_CATCH=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>true,'shared'=>false,'with'=>array(),),T_ELSE=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>false,'shared'=>false,'with'=>array(),),T_FOR=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>false,'shared'=>false,'with'=>array(),),T_FUNCTION=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>false,'shared'=>false,'with'=>array(),),T_WHILE=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>false,'shared'=>false,'with'=>array(),),T_DO=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>true,'shared'=>false,'with'=>array(),),T_SWITCH=>array('start'=>array(T_OPEN_CURLY_BRACKET=>T_OPEN_CURLY_BRACKET),'end'=>array(T_CLOSE_CURLY_BRACKET=>T_CLOSE_CURLY_BRACKET),'strict'=>true,'shared'=>false,'with'=>array(),),T_CASE=>array('start'=>array(T_COLON=>T_COLON),'end'=>array(T_BREAK=>T_BREAK,T_RETURN=>T_RETURN,T_CONTINUE=>T_CONTINUE,T_THROW=>T_THROW,),'strict'=>true,'shared'=>true,'with'=>array(T_DEFAULT=>T_DEFAULT,T_CASE=>T_CASE,T_SWITCH=>T_SWITCH,),),T_DEFAULT=>array('start'=>array(T_COLON=>T_COLON),'end'=>array(T_BREAK=>T_BREAK,T_RETURN=>T_RETURN,T_CONTINUE=>T_CONTINUE,T_THROW=>T_THROW,),'strict'=>true,'shared'=>true,'with'=>array(T_CASE=>T_CASE,T_SWITCH=>T_SWITCH,),),)
[line 40]
A list of tokens that are allowed to open a scope.
This array also contains information about what kind of token the scope opener uses to open and close the scope, if the token strictly requires an opener, if the token can share a scope closer, and who it can be shared with. An example of a token that shares a scope closer is a CASE scope.
$stringTokens = array(
'\'' => '\'',
'"' => '"',
)
[line 228]
A list string delimiters.
$tokenValues = array(
'function' => 'T_FUNCTION',
'prototype' => 'T_PROTOTYPE',
'try' => 'T_TRY',
'catch' => 'T_CATCH',
'return' => 'T_RETURN',
'throw' => 'T_THROW',
'break' => 'T_BREAK',
'switch' => 'T_SWITCH',
'continue' => 'T_CONTINUE',
'if' => 'T_IF',
'else' => 'T_ELSE',
'do' => 'T_DO',
'while' => 'T_WHILE',
'for' => 'T_FOR',
'var' => 'T_VAR',
'case' => 'T_CASE',
'default' => 'T_DEFAULT',
'true' => 'T_TRUE',
'false' => 'T_FALSE',
'null' => 'T_NULL',
'this' => 'T_THIS',
'typeof' => 'T_TYPEOF',
'(' => 'T_OPEN_PARENTHESIS',
')' => 'T_CLOSE_PARENTHESIS',
'{' => 'T_OPEN_CURLY_BRACKET',
'}' => 'T_CLOSE_CURLY_BRACKET',
'[' => 'T_OPEN_SQUARE_BRACKET',
']' => 'T_CLOSE_SQUARE_BRACKET',
'?' => 'T_INLINE_THEN',
'.' => 'T_OBJECT_OPERATOR',
'+' => 'T_PLUS',
'-' => 'T_MINUS',
'*' => 'T_MULTIPLY',
'%' => 'T_MODULUS',
'/' => 'T_DIVIDE',
'^' => 'T_POWER',
',' => 'T_COMMA',
';' => 'T_SEMICOLON',
':' => 'T_COLON',
'<' => 'T_LESS_THAN',
'>' => 'T_GREATER_THAN',
'<=' => 'T_IS_SMALLER_OR_EQUAL',
'>=' => 'T_IS_GREATER_OR_EQUAL',
'!' => 'T_BOOLEAN_NOT',
'||' => 'T_BOOLEAN_OR',
'&&' => 'T_BOOLEAN_AND',
'|' => 'T_BITWISE_OR',
'&' => 'T_BITWISE_AND',
'!=' => 'T_IS_NOT_EQUAL',
'!==' => 'T_IS_NOT_IDENTICAL',
'=' => 'T_EQUAL',
'==' => 'T_IS_EQUAL',
'===' => 'T_IS_IDENTICAL',
'-=' => 'T_MINUS_EQUAL',
'+=' => 'T_PLUS_EQUAL',
'*=' => 'T_MUL_EQUAL',
'/=' => 'T_DIV_EQUAL',
'%=' => 'T_MOD_EQUAL',
'++' => 'T_INC',
'--' => 'T_DEC',
'//' => 'T_COMMENT',
'/*' => 'T_COMMENT',
'/**' => 'T_DOC_COMMENT',
'*/' => 'T_COMMENT',
)
[line 156]
A list of special JS tokens and their types.
getRegexToken [line 939]
void getRegexToken(
string
$char, string
$string, string
$chars, string
$tokens, string
$eolChar)
Tokenizes a regular expression if one is found.
If a regular expression is not found, NULL is returned.
Parameters:
string
$char
—
The index of the possible regex start character.
string
$string
—
The complete content of the string being tokenized.
string
$chars
—
An array of characters being tokenized.
string
$tokens
—
The current array of tokens found in the string.
string
$eolChar
—
The EOL character to use for splitting strings.
processAdditional [line 1070]
void processAdditional(
array
&$tokens, string
$eolChar)
Performs additional processing after main tokenizing.
This additional processing looks for properties, labels and objects.
Parameters:
array
&$tokens
—
The array of tokens to process.
string
$eolChar
—
The EOL character to use for splitting strings.
tokenizeString [line 256]
array tokenizeString(
string
$string, [string
$eolChar = '\n'])
Creates an array of tokens when given some PHP code.
Starts by using token_get_all() but does a lot of extra processing to insert information about the context of the token.
Parameters:
string
$string
—
The string to tokenize.
string
$eolChar
—
The EOL character to use for splitting strings.