for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Xoco70\KendoTournaments\TreeGen;
use Illuminate\Support\Collection;
use Xoco70\KendoTournaments\Models\Championship;
class DirectEliminationTreeGen extends TreeGen
{
/**
* Calculate the Byes need to fill the Championship Tree.
* @param Championship $championship
* @return Collection
*/
protected function getByeGroup(Championship $championship, $fighters)
$championship
This check looks from parameters that have been defined for a function or method, but which are not used in the method body.
$fighterCount = $fighters->count();
$treeSize = $this->getTreeSize($fighterCount, $preliminaryGroupSize = 2);
$byeCount = $treeSize - $fighterCount;
return $this->createNullsGroup($byeCount);
}
* Create empty groups for direct Elimination Tree
* @param $numFightersEliminatory
public function pushEmptyGroupsToTree($numFightersEliminatory)
// We calculate how much rounds we will have
$numRounds = intval(log($numFightersEliminatory, 2));
$this->pushGroups($numRounds, $numFightersEliminatory);
* Chunk Fighters into groups for fighting, and optionnaly shuffle
* @param $round
* @param $shuffle
* @param $fightersByEntity
* @return Collection|null
protected function chunkAndShuffle($round, $shuffle, $fightersByEntity)
$round
$fightersGroup = null;
$fightersGroup
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
$fightersGroup = $fightersByEntity->chunk(2);
if ($shuffle) {
$fightersGroup = $fightersGroup->shuffle();
return $fightersGroup;
This check looks from parameters that have been defined for a function or method, but which are not used in the method body.