diff options
Diffstat (limited to 'vendor/doctrine/orm/src/Mapping/ToOneInverseSideMapping.php')
| -rw-r--r-- | vendor/doctrine/orm/src/Mapping/ToOneInverseSideMapping.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/doctrine/orm/src/Mapping/ToOneInverseSideMapping.php b/vendor/doctrine/orm/src/Mapping/ToOneInverseSideMapping.php new file mode 100644 index 0000000..5be89e6 --- /dev/null +++ b/vendor/doctrine/orm/src/Mapping/ToOneInverseSideMapping.php | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\ORM\Mapping; | ||
| 6 | |||
| 7 | abstract class ToOneInverseSideMapping extends InverseSideMapping | ||
| 8 | { | ||
| 9 | /** | ||
| 10 | * @param mixed[] $mappingArray | ||
| 11 | * @param class-string $name | ||
| 12 | * @psalm-param array{ | ||
| 13 | * fieldName: string, | ||
| 14 | * sourceEntity: class-string, | ||
| 15 | * targetEntity: class-string, | ||
| 16 | * cascade?: list<'persist'|'remove'|'detach'|'refresh'|'all'>, | ||
| 17 | * fetch?: ClassMetadata::FETCH_*|null, | ||
| 18 | * inherited?: class-string|null, | ||
| 19 | * declared?: class-string|null, | ||
| 20 | * cache?: array<mixed>|null, | ||
| 21 | * id?: bool|null, | ||
| 22 | * isOnDeleteCascade?: bool|null, | ||
| 23 | * originalClass?: class-string|null, | ||
| 24 | * originalField?: string|null, | ||
| 25 | * orphanRemoval?: bool, | ||
| 26 | * unique?: bool|null, | ||
| 27 | * joinTable?: mixed[]|null, | ||
| 28 | * type?: int, | ||
| 29 | * isOwningSide: bool, | ||
| 30 | * } $mappingArray | ||
| 31 | */ | ||
| 32 | public static function fromMappingArrayAndName( | ||
| 33 | array $mappingArray, | ||
| 34 | string $name, | ||
| 35 | ): static { | ||
| 36 | $mapping = static::fromMappingArray($mappingArray); | ||
| 37 | |||
| 38 | if (isset($mapping->id) && $mapping->id === true) { | ||
| 39 | throw MappingException::illegalInverseIdentifierAssociation($name, $mapping->fieldName); | ||
| 40 | } | ||
| 41 | |||
| 42 | if ($mapping->orphanRemoval) { | ||
| 43 | if (! $mapping->isCascadeRemove()) { | ||
| 44 | $mapping->cascade[] = 'remove'; | ||
| 45 | } | ||
| 46 | |||
| 47 | $mapping->unique = null; | ||
| 48 | } | ||
| 49 | |||
| 50 | return $mapping; | ||
| 51 | } | ||
| 52 | } | ||
