solar05/project-lvl2-s483

View on GitHub

Showing 7 of 7 total issues

Method makeAst has 31 lines of code (exceeds 25 allowed). Consider refactoring.
Open

function makeAst(array $firstData, array $secondData)
{
    $union = union(array_keys($firstData), array_keys($secondData));
    return array_reduce($union, function ($acc, $key) use ($firstData, $secondData) {
        if (array_key_exists($key, $firstData) && array_key_exists($key, $secondData)) {
Severity: Minor
Found in src/Ast.php - About 1 hr to fix

    Method prettyReport has 26 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    function prettyReport(array $ast, $level = 0)
    {
        $prettyTypeMap = [
            'nested' => function ($node, $level) {
                return getIndents($level) . '    ' . $node['node'] . ': ' . prettyReport($node['children'], $level + 1);
    Severity: Minor
    Found in src/ReportGenerator/PrettyReporter.php - About 1 hr to fix

      Avoid too many return statements within this method.
      Open

          return $plainTypeMap[$node['type']]($node);
      Severity: Major
      Found in src/ReportGenerator/PlainReporter.php - About 30 mins to fix

        Avoid too many return statements within this method.
        Open

            return "{\n{$text}\n{$finalIndents}}";
        Severity: Major
        Found in src/ReportGenerator/PrettyReporter.php - About 30 mins to fix

          Avoid too many return statements within this method.
          Open

                      return [];
          Severity: Major
          Found in src/ReportGenerator/PlainReporter.php - About 30 mins to fix

            Avoid too many return statements within this method.
            Open

                    return $str;
            Severity: Major
            Found in src/ReportGenerator/PrettyReporter.php - About 30 mins to fix

              Avoid too many return statements within this method.
              Open

                          return [getPreparedPrettyLine($level, '-', $node['node'], $node['from']),
                              getPreparedPrettyLine($level, '+', $node['node'], $node['to'])];
              Severity: Major
              Found in src/ReportGenerator/PrettyReporter.php - About 30 mins to fix
                Severity
                Category
                Status
                Source
                Language