Skip to content
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
2 changes: 1 addition & 1 deletion phpstan.neon
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ includes:
- phpstan-baseline.neon

parameters:
level: 6
level: 7
paths:
- src
- tests
2 changes: 1 addition & 1 deletion src/Collection.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
class Collection extends AbstractLazyCollection
{
/**
* @param list<class-string> $type
* @param list<class-string<EntityInterface>> $type
*/
public function __construct(
private readonly string $relationTable,
Expand Down
6 changes: 3 additions & 3 deletions src/Condition.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,14 +96,14 @@ final public static function forValue(mixed $value, string $tableColumn, ?Compar

if (is_array($value)) {
if ($comparator === Comparator::IN_OR_EMPTY) {
return new CompositeCondition([new InCondition($tableColumn, $value), new EmptyCondition($tableColumn)], Conjunction::OR);
return new CompositeCondition([new InCondition($tableColumn, array_values($value)), new EmptyCondition($tableColumn)], Conjunction::OR);
}

if ($comparator === Comparator::NOT_IN_OR_EMPTY) {
return new CompositeCondition([new InCondition($tableColumn, $value, true), new EmptyCondition($tableColumn)], Conjunction::OR);
return new CompositeCondition([new InCondition($tableColumn, array_values($value), true), new EmptyCondition($tableColumn)], Conjunction::OR);
}

return new InCondition($tableColumn, $value);
return new InCondition($tableColumn, array_values($value));
}

return null;
Expand Down
12 changes: 8 additions & 4 deletions src/EntityManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public function __construct(private readonly ConnectionInterface $connection, pr
}

/**
* @param class-string<EntityInterface> $targetClass
* @param list<ConditionInterface> $conditions
* @param list<OrderByInterface> $sorting
*
Expand All @@ -39,8 +40,9 @@ public function findAll(string $targetClass, array $conditions = [], array $sort
}

/**
* @param array<ConditionInterface> $conditions
* @param array<OrderByInterface> $sorting
* @param class-string<EntityInterface> $targetClass
* @param list<ConditionInterface> $conditions
* @param list<OrderByInterface> $sorting
*
* @throws OrmException
*/
Expand All @@ -60,6 +62,7 @@ public function findOne(string $targetClass, array $conditions = [], array $sort
}

/**
* @param class-string $targetClass
* @param array<ConditionInterface> $conditions
*
* @throws OrmException
Expand All @@ -84,6 +87,7 @@ public function getCount(string $targetClass, array $conditions): int
}

/**
* @param class-string $targetClass
* @param list<ConditionInterface> $conditions
* @param list<OrderByInterface> $sorting
*
Expand Down Expand Up @@ -254,7 +258,7 @@ public function delete(EntityInterface $entity): void
*
* @throws OrmException
*
* @return array{DoctrineCollection<int,object>,string,string,string,list<class-string>}
* @return array{DoctrineCollection<int,EntityInterface>,string,string,string,list<class-string>}
*/
private function getRelation(EntityInterface $entity, array $config): array
{
Expand All @@ -274,7 +278,7 @@ private function getRelation(EntityInterface $entity, array $config): array
}

/**
* @param list<array{DoctrineCollection<int,object>,string,string,string,list<class-string>}> $relations
* @param list<array{DoctrineCollection<int,EntityInterface>,string,string,string,list<class-string>}> $relations
*/
private function handleRelations(EntityInterface $entity, array $relations): void
{
Expand Down
7 changes: 5 additions & 2 deletions src/EntityMeta.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ public function getProperties(string $entityClass): array
return $types;
}

/**
* @param class-string $entityClass
*/
public function getPrimaryColumn(string $entityClass): string
{
$types = $this->getProperties($entityClass);
Expand Down Expand Up @@ -128,8 +131,8 @@ private function getTableNamesFromEntity(string $entityClass): array
* @return array<string, array{
* self::TYPE_*,
* class-string,
* non-empty-string,
* non-empty-string,
* string,
* string,
* }>
*/
private function getTypesFromEntity(string $entityClass): array
Expand Down
3 changes: 3 additions & 0 deletions src/QueryBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ public function __construct(
) {
}

/**
* @param class-string $entityClass
*/
public function buildFrom(string $entityClass, ?string $joinColumn = null): string
{
$targetTables = $this->entityMeta->getTableNames($entityClass);
Expand Down
5 changes: 4 additions & 1 deletion src/SchemaManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ public function __construct(
) {
}

/**
* @param class-string $entityClass
*/
public function createTable(string $entityClass): void
{
$tableNames = $this->entityMeta->getTableNames($entityClass);
Expand All @@ -38,7 +41,7 @@ public function createTable(string $entityClass): void
* @param list<mixed> $keys
* @param array<array-key, mixed> $relationTables
*
* @return array<string, list<mixed>>
* @return array<non-falsy-string, array{DataType,bool,mixed}>
*/
private function getFieldsForEntity(string $entityClass, array &$keys, array &$relationTables): array
{
Expand Down