* @license MIT */ class MagicIsset extends MagicMethodGenerator { /** * Constructor * @param ReflectionClass $originalClass * @param \Zend\Code\Generator\PropertyGenerator $adapterProperty * * @throws \Zend\Code\Generator\Exception\InvalidArgumentException */ public function __construct(ReflectionClass $originalClass, PropertyGenerator $adapterProperty) { parent::__construct($originalClass, '__isset', [new ParameterGenerator('name')]); $this->setDocBlock('@param string $name'); $this->setBody( '$return = $this->' . $adapterProperty->getName() . '->call(' . var_export($originalClass->getName(), true) . ', \'__isset\', array($name));' . "\n\n" . 'return $return;' ); } }