bitExpert\Disco\Proxy\LazyBean\MethodGenerator\MagicSleep::__construct PHP Метод

__construct() публичный Метод

Creates a new {@link \bitExpert\Disco\Proxy\MethodGenerator\MagicSleep}.
public __construct ( ReflectionClass $originalClass, Zend\Code\Generator\PropertyGenerator $initializerProperty, Zend\Code\Generator\PropertyGenerator $valueHolderProperty, Zend\Code\Generator\PropertyGenerator $valueHolderBeanIdProperty )
$originalClass ReflectionClass
$initializerProperty Zend\Code\Generator\PropertyGenerator
$valueHolderProperty Zend\Code\Generator\PropertyGenerator
$valueHolderBeanIdProperty Zend\Code\Generator\PropertyGenerator
    public function __construct(ReflectionClass $originalClass, PropertyGenerator $initializerProperty, PropertyGenerator $valueHolderProperty, PropertyGenerator $valueHolderBeanIdProperty)
    {
        parent::__construct($originalClass, '__sleep');
        $initializer = $initializerProperty->getName();
        $valueHolder = $valueHolderProperty->getName();
        $valueHolderBeanId = $valueHolderBeanIdProperty->getName();
        $this->setBody('$this->' . $initializer . ' && $this->' . $initializer . '->__invoke($this->' . $valueHolder . ', $this, \'__sleep\', array(), $this->' . $initializer . ');' . PHP_EOL . PHP_EOL . 'return array(' . var_export($valueHolderBeanId, true) . ');');
    }
MagicSleep