rector/rules/Php80/ValueObject/AnnotationPropertyToAttribu...

50 lines
1.2 KiB
PHP

<?php
declare (strict_types=1);
namespace Rector\Php80\ValueObject;
use Rector\Validation\RectorAssert;
final class AnnotationPropertyToAttributeClass
{
/**
* @readonly
* @var string
*/
private $attributeClass;
/**
* @readonly
* @var int|string|null
*/
private $annotationProperty = null;
/**
* @readonly
* @var bool
*/
private $doesNeedNewImport = \false;
/**
* @param string|int|null $annotationProperty
*/
public function __construct(string $attributeClass, $annotationProperty = null, bool $doesNeedNewImport = \false)
{
$this->attributeClass = $attributeClass;
$this->annotationProperty = $annotationProperty;
$this->doesNeedNewImport = $doesNeedNewImport;
RectorAssert::className($attributeClass);
}
/**
* @return int|string|null
*/
public function getAnnotationProperty()
{
return $this->annotationProperty;
}
public function getAttributeClass() : string
{
return $this->attributeClass;
}
public function doesNeedNewImport() : bool
{
return $this->doesNeedNewImport;
}
}