for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace DependencyAnalyzer\DependencyGraph\FullyQualifiedStructuralElementName;
abstract class Base
{
abstract public function getType(): string;
abstract public function include(Base $that): bool;
abstract public function getFullyQualifiedNamespaceName(): array;
abstract public function getFullyQualifiedClassName(): ?array;
/**
* @var string
*/
protected $elementName;
* @param string $elementName
* @deps-internal \DependencyAnalyzer\DependencyGraph\FullyQualifiedStructuralElementName
public function __construct(string $elementName)
$this->elementName = $elementName;
}
public function toString(): string
return $this->elementName;
public function isNamespace(): bool
return false;
public function isClass(): bool
public function isMethod(): bool
public function isProperty(): bool
public function isClassConstant(): bool
public function isInterface(): bool
public function isTrait(): bool
public function isFunction(): bool
public function isConstant(): bool
public function isSame(Base $that): bool
return $this->getType() === $that->getType() && $this->toString() === $that->toString();