コード例 #1
0
ファイル: Engine.php プロジェクト: digitronac/pdepend
 /**
  * This method performs the analysing process of the parsed source files. It
  * creates the required analyzers for the registered listeners and then
  * applies them to the source tree.
  *
  * @return void
  */
 private function performAnalyzeProcess()
 {
     $analyzerLoader = $this->createAnalyzers($this->options);
     $collection = CollectionArtifactFilter::getInstance();
     $this->fireStartAnalyzeProcess();
     ini_set('xdebug.max_nesting_level', $this->configuration->parser->nesting);
     foreach ($analyzerLoader as $analyzer) {
         // Add filters if this analyzer is filter aware
         if ($analyzer instanceof AnalyzerFilterAware) {
             $collection->setFilter($this->codeFilter);
         }
         $analyzer->analyze($this->builder->getNamespaces());
         // Remove filters if this analyzer is filter aware
         $collection->setFilter();
         foreach ($this->generators as $logger) {
             $logger->log($analyzer);
         }
     }
     ini_restore('xdebug.max_nesting_level');
     $this->fireEndAnalyzeProcess();
 }