12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <?php
- namespace Doctrine\DBAL\Schema;
- use function in_array;
- /**
- * Represents the change of a column.
- */
- class ColumnDiff
- {
- /** @var string */
- public $oldColumnName;
- /** @var Column */
- public $column;
- /** @var string[] */
- public $changedProperties = [];
- /** @var Column */
- public $fromColumn;
- /**
- * @param string $oldColumnName
- * @param string[] $changedProperties
- */
- public function __construct($oldColumnName, Column $column, array $changedProperties = [], ?Column $fromColumn = null)
- {
- $this->oldColumnName = $oldColumnName;
- $this->column = $column;
- $this->changedProperties = $changedProperties;
- $this->fromColumn = $fromColumn;
- }
- /**
- * @param string $propertyName
- *
- * @return bool
- */
- public function hasChanged($propertyName)
- {
- return in_array($propertyName, $this->changedProperties);
- }
- /**
- * @return Identifier
- */
- public function getOldColumnName()
- {
- $quote = $this->fromColumn && $this->fromColumn->isQuoted();
- return new Identifier($this->oldColumnName, $quote);
- }
- }
|