for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace PHPSA\Compiler\Expression;
use PHPSA\CompiledExpression;
use PHPSA\Context;
use PHPSA\Compiler\Expression;
use PHPSA\Compiler\Expression\AbstractExpressionCompiler;
class YieldFrom extends AbstractExpressionCompiler
{
protected $name = 'PhpParser\Node\Expr\YieldFrom';
/**
* yield from {expr}
*
* @param \PhpParser\Node\Expr\YieldFrom $expr
* @param Context $context
* @return CompiledExpression
*/
protected function compile($expr, Context $context)
$compiled = $context->getExpressionCompiler()->compile($expr->expr);
$compiled
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
$myVar = 'Value'; $higher = false; if (rand(1, 6) > 3) { $higher = true; } else { $higher = false; }
Both the $myVar assignment in line 1 and the $higher assignment in line 2 are dead. The first because $myVar is never used and the second because $higher is always overwritten for every possible time line.
$myVar
$higher
// @TODO implement yield from
return new CompiledExpression();
}
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
Both the
$myVarassignment in line 1 and the$higherassignment in line 2 are dead. The first because$myVaris never used and the second because$higheris always overwritten for every possible time line.