PHP Class PDepend\Engine

The PDepend is a php port/adaption of the Java class file analyzer JDepend.
显示文件 Open project: pdepend/pdepend Class Usage Examples

Protected Properties

Property Type Description
$configuration PDepend\Util\Configuration The system configuration.

Public Methods

Method Description
__construct ( PDepend\Util\Configuration $configuration, PDepend\Util\Cache\CacheFactory $cacheFactory, PDepend\Metrics\AnalyzerFactory $analyzerFactory ) Constructs a new php depend facade.
addDirectory ( string $directory ) : void Adds the specified directory to the list of directories to be analyzed.
addFile ( string $file ) : void Adds a single source code file to the list of files to be analysed.
addFileFilter ( PDepend\Input\Filter $filter ) : void Adds a new input/file filter.
addProcessListener ( pdepend\ProcessListener $listener ) : void Adds a process listener.
addReportGenerator ( PDepend\Report\ReportGenerator $generator ) : void Adds a logger to the output list.
analyze ( ) : PDepend\Source\AST\ASTNamespace[] Analyzes the registered directories and returns the collection of analyzed namespace.
countClasses ( ) : integer Returns the number of analyzed php classes and interfaces.
countNamespaces ( ) : integer Returns the number of analyzed namespaces.
getExceptions ( ) : PDepend\Source\Parser\ParserException[] Returns an array with all {@link \PDepend\Source\Parser\ParserException} that were caught during the parsing process.
getNamespace ( string $name ) : PDepend\Source\AST\ASTNamespace Returns the analyzed namespace for the given name.
getNamespaces ( ) : PDepend\Source\AST\ASTNamespace[] Returns an array with the analyzed namespace.
setCodeFilter ( PDepend\Source\AST\ASTArtifactList\ArtifactFilter $filter ) : void Sets an additional code filter. These filters could be used to hide external libraries and global stuff from the PDepend output.
setOptions ( array $options = [] ) : void Sets analyzer options.
setWithoutAnnotations ( ) : void Should the parse ignore doc comment annotations?

Protected Methods

Method Description
fireEndAnalyzeProcess ( ) : void Sends the end analyzing process event.
fireEndFileParsing ( PDepend\Source\Tokenizer\Tokenizer $tokenizer ) : void Sends the end file parsing event.
fireEndLogProcess ( ) : void Sends the end log process event.
fireEndParseProcess ( PDepend\Source\Builder\Builder $builder ) : void Send the end parsing process event.
fireStartAnalyzeProcess ( ) : void Sends the start analyzing process event.
fireStartFileParsing ( PDepend\Source\Tokenizer\Tokenizer $tokenizer ) : void Sends the start file parsing event.
fireStartLogProcess ( ) : void Sends the start log process event.
fireStartParseProcess ( PDepend\Source\Builder\Builder $builder ) : void Send the start parsing process event.

Private Methods

Method Description
createAnalyzers ( $options )
createFileIterator ( ) : Iterator This method will create an iterator instance which contains all files that are part of the parsing process.
performAnalyzeProcess ( ) : void 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.
performParseProcess ( ) : void This method performs the parsing process of all source files. It expects that the $_builder property was initialized with a concrete builder implementation.

Method Details

__construct() public method

Constructs a new php depend facade.
public __construct ( PDepend\Util\Configuration $configuration, PDepend\Util\Cache\CacheFactory $cacheFactory, PDepend\Metrics\AnalyzerFactory $analyzerFactory )
$configuration PDepend\Util\Configuration The system configuration.
$cacheFactory PDepend\Util\Cache\CacheFactory
$analyzerFactory PDepend\Metrics\AnalyzerFactory

addDirectory() public method

Adds the specified directory to the list of directories to be analyzed.
public addDirectory ( string $directory ) : void
$directory string The php source directory.
return void

addFile() public method

Adds a single source code file to the list of files to be analysed.
public addFile ( string $file ) : void
$file string The source file name.
return void

addFileFilter() public method

Adds a new input/file filter.
public addFileFilter ( PDepend\Input\Filter $filter ) : void
$filter PDepend\Input\Filter New input/file filter instance.
return void

addProcessListener() public method

Adds a process listener.
public addProcessListener ( pdepend\ProcessListener $listener ) : void
$listener pdepend\ProcessListener The listener instance.
return void

addReportGenerator() public method

Adds a logger to the output list.
public addReportGenerator ( PDepend\Report\ReportGenerator $generator ) : void
$generator PDepend\Report\ReportGenerator The logger instance.
return void

analyze() public method

Analyzes the registered directories and returns the collection of analyzed namespace.
public analyze ( ) : PDepend\Source\AST\ASTNamespace[]
return PDepend\Source\AST\ASTNamespace[]

countClasses() public method

Returns the number of analyzed php classes and interfaces.
public countClasses ( ) : integer
return integer

countNamespaces() public method

Returns the number of analyzed namespaces.
public countNamespaces ( ) : integer
return integer

fireEndAnalyzeProcess() protected method

Sends the end analyzing process event.
protected fireEndAnalyzeProcess ( ) : void
return void

fireEndFileParsing() protected method

Sends the end file parsing event.
protected fireEndFileParsing ( PDepend\Source\Tokenizer\Tokenizer $tokenizer ) : void
$tokenizer PDepend\Source\Tokenizer\Tokenizer
return void

fireEndLogProcess() protected method

Sends the end log process event.
protected fireEndLogProcess ( ) : void
return void

fireEndParseProcess() protected method

Send the end parsing process event.
protected fireEndParseProcess ( PDepend\Source\Builder\Builder $builder ) : void
$builder PDepend\Source\Builder\Builder The used node builder instance.
return void

fireStartAnalyzeProcess() protected method

Sends the start analyzing process event.
protected fireStartAnalyzeProcess ( ) : void
return void

fireStartFileParsing() protected method

Sends the start file parsing event.
protected fireStartFileParsing ( PDepend\Source\Tokenizer\Tokenizer $tokenizer ) : void
$tokenizer PDepend\Source\Tokenizer\Tokenizer
return void

fireStartLogProcess() protected method

Sends the start log process event.
protected fireStartLogProcess ( ) : void
return void

fireStartParseProcess() protected method

Send the start parsing process event.
protected fireStartParseProcess ( PDepend\Source\Builder\Builder $builder ) : void
$builder PDepend\Source\Builder\Builder The used node builder instance.
return void

getExceptions() public method

Returns an array with all {@link \PDepend\Source\Parser\ParserException} that were caught during the parsing process.
public getExceptions ( ) : PDepend\Source\Parser\ParserException[]
return PDepend\Source\Parser\ParserException[]

getNamespace() public method

Returns the analyzed namespace for the given name.
public getNamespace ( string $name ) : PDepend\Source\AST\ASTNamespace
$name string
return PDepend\Source\AST\ASTNamespace

getNamespaces() public method

Returns an array with the analyzed namespace.
public getNamespaces ( ) : PDepend\Source\AST\ASTNamespace[]
return PDepend\Source\AST\ASTNamespace[]

setCodeFilter() public method

Sets an additional code filter. These filters could be used to hide external libraries and global stuff from the PDepend output.
public setCodeFilter ( PDepend\Source\AST\ASTArtifactList\ArtifactFilter $filter ) : void
$filter PDepend\Source\AST\ASTArtifactList\ArtifactFilter
return void

setOptions() public method

Sets analyzer options.
public setOptions ( array $options = [] ) : void
$options array
return void

setWithoutAnnotations() public method

Should the parse ignore doc comment annotations?
public setWithoutAnnotations ( ) : void
return void

Property Details

$configuration protected_oe property

The system configuration.
Since: 0.10.0
protected Configuration,PDepend\Util $configuration
return PDepend\Util\Configuration