Verzeichnisstruktur phpBB-3.3.15
- Veröffentlicht
- 28.08.2024
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
MagicClone.php
01 <?php
02
03 declare(strict_types=1);
04
05 namespace ProxyManager\ProxyGenerator\LazyLoadingGhost\MethodGenerator;
06
07 use ProxyManager\Generator\MagicMethodGenerator;
08 use ReflectionClass;
09 use Zend\Code\Generator\MethodGenerator;
10 use Zend\Code\Generator\PropertyGenerator;
11
12 /**
13 * Magic `__clone` for lazy loading ghost objects
14 *
15 * @author Marco Pivetta <ocramius@gmail.com>
16 * @license MIT
17 */
18 class MagicClone extends MagicMethodGenerator
19 {
20 /**
21 * Constructor
22 *
23 * @param ReflectionClass $originalClass
24 * @param PropertyGenerator $initializerProperty
25 * @param MethodGenerator $callInitializer
26 */
27 public function __construct(
28 ReflectionClass $originalClass,
29 PropertyGenerator $initializerProperty,
30 MethodGenerator $callInitializer
31 ) {
32 parent::__construct($originalClass, '__clone');
33
34 $this->setBody(
35 '$this->' . $initializerProperty->getName() . ' && $this->' . $callInitializer->getName()
36 . '(\'__clone\', []);'
37 . ($originalClass->hasMethod('__clone') ? "\n\nparent::__clone();" : '')
38 );
39 }
40 }
41