From bf6655a534a6775d30cafa67bd801276bda1d98d Mon Sep 17 00:00:00 2001 From: polo Date: Tue, 13 Aug 2024 23:45:21 +0200 Subject: =?UTF-8?q?VERSION=200.2=20doctrine=20ORM=20et=20entit=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Reflection/RuntimeReflectionProperty.php | 87 ++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 vendor/doctrine/persistence/src/Persistence/Reflection/RuntimeReflectionProperty.php (limited to 'vendor/doctrine/persistence/src/Persistence/Reflection/RuntimeReflectionProperty.php') diff --git a/vendor/doctrine/persistence/src/Persistence/Reflection/RuntimeReflectionProperty.php b/vendor/doctrine/persistence/src/Persistence/Reflection/RuntimeReflectionProperty.php new file mode 100644 index 0000000..5f52056 --- /dev/null +++ b/vendor/doctrine/persistence/src/Persistence/Reflection/RuntimeReflectionProperty.php @@ -0,0 +1,87 @@ +key = $this->isPrivate() ? "\0" . ltrim($class, '\\') . "\0" . $name : ($this->isProtected() ? "\0*\0" . $name : $name); + } + + /** + * {@inheritDoc} + * + * @return mixed + */ + #[ReturnTypeWillChange] + public function getValue($object = null) + { + if ($object === null) { + return parent::getValue($object); + } + + return ((array) $object)[$this->key] ?? null; + } + + /** + * {@inheritDoc} + * + * @param object|null $object + * @param mixed $value + * + * @return void + */ + #[ReturnTypeWillChange] + public function setValue($object, $value = null) + { + if (! ($object instanceof Proxy && ! $object->__isInitialized())) { + parent::setValue($object, $value); + + return; + } + + if ($object instanceof CommonProxy) { + $originalInitializer = $object->__getInitializer(); + $object->__setInitializer(null); + + parent::setValue($object, $value); + + $object->__setInitializer($originalInitializer); + + return; + } + + if (! method_exists($object, '__setInitialized')) { + return; + } + + $object->__setInitialized(true); + + parent::setValue($object, $value); + + $object->__setInitialized(false); + } +} -- cgit v1.2.3