SensioLabs\Deptrac\DependencyEmitter\BasicDependencyEmitter::applyDependencies PHP Method

applyDependencies() public method

public applyDependencies ( SensioLabs\AstRunner\AstParser\AstParserInterface $astParser, SensioLabs\AstRunner\AstMap $astMap, DependencyResult $dependencyResult )
$astParser SensioLabs\AstRunner\AstParser\AstParserInterface
$astMap SensioLabs\AstRunner\AstMap
$dependencyResult SensioLabs\Deptrac\DependencyResult
    public function applyDependencies(AstParserInterface $astParser, AstMap $astMap, DependencyResult $dependencyResult)
    {
        /* @var $astParser NikicPhpParser */
        assert($astParser instanceof NikicPhpParser === true);
        foreach ($astMap->getAstFileReferences() as $fileReference) {
            $uses = $this->getUseStatements($astParser, $fileReference);
            foreach ($fileReference->getAstClassReferences() as $astClassReference) {
                /** @var $uses EmittedDependency[] */
                $uses = array_merge($uses, $this->getInstanceOfStatements($astParser, $astClassReference), $this->getParamStatements($astParser, $astClassReference), $this->getNewStatements($astParser, $astClassReference), $this->getStaticPropertiesAccess($astParser, $astClassReference), $this->getStaticMethodCalls($astParser, $astClassReference));
                foreach ($uses as $emittedDependency) {
                    $dependencyResult->addDependency(new Dependency($astClassReference->getClassName(), $emittedDependency->getLine(), $emittedDependency->getClass()));
                }
            }
        }
    }