\\d+)(.*?)@@#';
/**
* @var string
*/
private const FIRST_LINE_KEY = 'first_line';
/**
* @param RectorWithLineChange[] $rectorsWithLineChanges
*/
public function __construct(string $relativeFilePath, string $diff, string $diffConsoleFormatted, array $rectorsWithLineChanges = [])
{
$this->relativeFilePath = $relativeFilePath;
$this->diff = $diff;
$this->diffConsoleFormatted = $diffConsoleFormatted;
$this->rectorsWithLineChanges = $rectorsWithLineChanges;
Assert::allIsInstanceOf($rectorsWithLineChanges, RectorWithLineChange::class);
}
public function getDiff() : string
{
return $this->diff;
}
public function getDiffConsoleFormatted() : string
{
return $this->diffConsoleFormatted;
}
public function getRelativeFilePath() : string
{
return $this->relativeFilePath;
}
public function getAbsoluteFilePath() : ?string
{
return \realpath($this->relativeFilePath) ?: null;
}
/**
* @return RectorWithLineChange[]
*/
public function getRectorChanges() : array
{
return $this->rectorsWithLineChanges;
}
/**
* @return string[]
*/
public function getRectorShortClasses() : array
{
$rectorShortClasses = [];
foreach ($this->getRectorClasses() as $rectorClass) {
$rectorShortClasses[] = (string) Strings::after($rectorClass, '\\', -1);
}
return $rectorShortClasses;
}
/**
* @return array