* @license MIT */ class InitializeProxy extends MethodGenerator { /** * Constructor */ public function __construct(PropertyGenerator $initializerProperty, PropertyGenerator $valueHolderProperty) { parent::__construct('initializeProxy'); $this->setDocblock('{@inheritDoc}'); $initializer = $initializerProperty->getName(); $this->setBody( 'return $this->' . $initializer . ' && $this->' . $initializer . '->__invoke($this->' . $valueHolderProperty->getName() . ', $this, \'initializeProxy\', array(), $this->' . $initializer . ');' ); } }