function VariableAnalysisSniff::markVariableAssignment
* Record that a variable has been defined and assigned a value. * * If a variable has been defined within a scope, it will not be marked as * undefined when that variable is later used. If it is not used, it will be * marked as unused when that scope ends. * * Sometimes it's possible to assign something to a variable without * definining it (eg: assignment to a reference); in that case, use * `markVariableAssignmentWithoutInitialization()`. * *
Parameters
string $varName: * @param int $stackPtr * @param int $currScope * * @return void
11 calls to VariableAnalysisSniff::markVariableAssignment()
- VariableAnalysisSniff::markVariableAssignmentWithoutInitialization in vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php - * Record that a variable has been assigned a value. * * Does not record that a variable has been defined, which is the usual state * of affairs. For that, use `markVariableAssignment()`. * * This is useful for assignments to references. * *
- VariableAnalysisSniff::markVariableReadAndWarnIfUndefined in vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php - * Record a variable use and report a warning if the variable is undefined. * *
- VariableAnalysisSniff::processVariableAsAssignment in vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php - * Process a variable that is being assigned. * * This will record that the variable has been defined within a scope so that * later we can determine if it it unused and we can guarantee that any * future uses of the variable are not using an…
- VariableAnalysisSniff::processVariableAsCatchBlock in vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php - * Process a variable that is being accessed inside a catch block. * * Can be called for any token and will return false if the variable is not * of this type. * *
- VariableAnalysisSniff::processVariableAsForeachLoopVar in vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php - *
File
-
vendor/
sirbrillig/ phpcs-variable-analysis/ VariableAnalysis/ Sniffs/ CodeAnalysis/ VariableAnalysisSniff.php, line 500
Class
Namespace
VariableAnalysis\Sniffs\CodeAnalysisCode
protected function markVariableAssignment($varName, $stackPtr, $currScope) {
Helpers::debug('markVariableAssignment: starting for', $varName);
$this->markVariableAssignmentWithoutInitialization($varName, $stackPtr, $currScope);
Helpers::debug('markVariableAssignment: marked as assigned without initialization', $varName);
$varInfo = $this->getOrCreateVariableInfo($varName, $currScope);
if (isset($varInfo->firstInitialized) && $varInfo->firstInitialized <= $stackPtr) {
Helpers::debug('markVariableAssignment: variable is already initialized', $varName);
return;
}
$varInfo->firstInitialized = $stackPtr;
Helpers::debug('markVariableAssignment: marked as initialized', $varName);
}