PDepend\Metrics\Analyzer\CrapIndexAnalyzer::analyze PHP Method

analyze() public method

Performs the crap index analysis.
public analyze ( PDepend\Source\AST\ASTNamespace[] $namespaces ) : void
$namespaces PDepend\Source\AST\ASTNamespace[]
return void
    public function analyze($namespaces)
    {
        if ($this->isEnabled() && $this->metrics === null) {
            $this->doAnalyze($namespaces);
        }
    }

Usage Example

 /**
  * Calculates the crap index.
  *
  * @param string  $testCase Name of the calling test case.
  * @param integer $ccn      The entire cyclomatic complexity number.
  *
  * @return array
  */
 private function _calculateCrapIndex($testCase, $ccn)
 {
     $namespaces = self::parseCodeResourceForTest();
     $options = array('coverage-report' => $this->_createCloverReportFile());
     $analyzer = new CrapIndexAnalyzer($options);
     $analyzer->addAnalyzer($this->_createCyclomaticComplexityAnalyzerMock($ccn));
     $analyzer->analyze($namespaces);
     $namespaces->rewind();
     if ($namespaces->current()->getTypes()->count() > 0) {
         return $analyzer->getNodeMetrics($namespaces->current()->getTypes()->current()->getMethods()->current());
     }
     return $analyzer->getNodeMetrics($namespaces->current()->getFunctions()->current());
 }