Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate classes with the fewest changes #10378

Merged
merged 1 commit into from
Jan 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php
Original file line number Diff line number Diff line change
Expand Up @@ -537,12 +537,11 @@ protected function registerManaged(ClassMetadata $class, object $entity, array $
}

/**
* @param mixed $value
* @param class-string<BackedEnum> $enumType
*
* @return BackedEnum|array<BackedEnum>
*/
final protected function buildEnum($value, string $enumType)
final protected function buildEnum(mixed $value, string $enumType): BackedEnum|array
{
if (is_array($value)) {
return array_map(
Expand Down
8 changes: 3 additions & 5 deletions lib/Doctrine/ORM/Mapping/DefaultQuoteStrategy.php
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,9 @@ public function getIdentifierColumnNames(ClassMetadata $class, AbstractPlatform
// Association defined as Id field
$joinColumns = $class->associationMappings[$fieldName]['joinColumns'];
$assocQuotedColumnNames = array_map(
static function ($joinColumn) use ($platform) {
return isset($joinColumn['quoted'])
? $platform->quoteIdentifier($joinColumn['name'])
: $joinColumn['name'];
},
static fn (array $joinColumn) => isset($joinColumn['quoted'])
? $platform->quoteIdentifier($joinColumn['name'])
: $joinColumn['name'],
$joinColumns,
);

Expand Down
7 changes: 2 additions & 5 deletions lib/Doctrine/ORM/Mapping/ReflectionEnumProperty.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
use ValueError;

use function array_map;
use function get_class;
use function is_array;

final class ReflectionEnumProperty extends ReflectionProperty
Expand Down Expand Up @@ -55,9 +54,7 @@ public function setValue(mixed $object, mixed $value = null): void
{
if ($value !== null) {
if (is_array($value)) {
$value = array_map(function ($item) use ($object): BackedEnum {
return $this->initializeEnumValue($object, $item);
}, $value);
$value = array_map(fn (int|string|BackedEnum $item): BackedEnum => $this->initializeEnumValue($object, $item), $value);
} else {
$value = $this->initializeEnumValue($object, $value);
}
Expand All @@ -78,7 +75,7 @@ private function initializeEnumValue(object $object, int|string|BackedEnum $valu
return $enumType::from($value);
} catch (ValueError $e) {
throw MappingException::invalidEnumValue(
get_class($object),
$object::class,
$this->originalReflectionProperty->getName(),
(string) $value,
$enumType,
Expand Down
2 changes: 1 addition & 1 deletion lib/Doctrine/ORM/Query/FilterCollection.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ class FilterCollection
*/
public const FILTERS_STATE_DIRTY = 2;

private Configuration $config;
private readonly Configuration $config;

/**
* Instances of enabled filters.
Expand Down
3 changes: 2 additions & 1 deletion lib/Doctrine/ORM/Query/ResultSetMappingBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,15 @@
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\Utility\PersisterHelper;
use InvalidArgumentException;
use Stringable;

use function in_array;
use function sprintf;

/**
* A ResultSetMappingBuilder uses the EntityManager to automatically populate entity fields.
*/
class ResultSetMappingBuilder extends ResultSetMapping
class ResultSetMappingBuilder extends ResultSetMapping implements Stringable
{
use SQLResultCasing;

Expand Down
7 changes: 4 additions & 3 deletions lib/Doctrine/ORM/Tools/Pagination/WhereInWalker.php
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,9 @@ private function convertWhereInIdentifiersToDatabaseValue(string $type): void
->getEntityManager()
->getConnection();

$query->setParameter(self::PAGINATOR_ID_ALIAS, array_map(static function ($id) use ($connection, $type) {
return $connection->convertToDatabaseValue($id, $type);
}, $identifiers));
$query->setParameter(
self::PAGINATOR_ID_ALIAS,
array_map(static fn (mixed $id): mixed => $connection->convertToDatabaseValue($id, $type), $identifiers),
);
}
}