/** * fromReflection() * * @param \Zend\Reflection\ReflectionParameter $reflectionParameter * @return \Zend\CodeGenerator\Php\PhpParameter\Parameter */ public static function fromReflection(\Zend\Reflection\ReflectionParameter $reflectionParameter) { $param = new PhpParameter(); $param->setName($reflectionParameter->getName()); if ($reflectionParameter->isArray()) { $param->setType('array'); } else { $typeClass = $reflectionParameter->getClass(); if ($typeClass !== null) { $param->setType($typeClass->getName()); } } $param->setPosition($reflectionParameter->getPosition()); if ($reflectionParameter->isOptional()) { $param->setDefaultValue($reflectionParameter->getDefaultValue()); } $param->setPassedByReference($reflectionParameter->isPassedByReference()); return $param; }
/** * setParameter() * * @param \Zend\CodeGenerator\Php\Parameter\Parameter|array $parameter * @return \Zend\CodeGenerator\Php\PhpMethod */ public function setParameter($parameter) { if (is_array($parameter)) { $parameter = new PhpParameter($parameter); $parameterName = $parameter->getName(); } elseif ($parameter instanceof PhpParameter) { $parameterName = $parameter->getName(); } else { throw new Exception('setParameter() expects either an array of method options or an instance of Zend_CodeGenerator_Php_Parameter'); } $this->_parameters[$parameterName] = $parameter; return $this; }
/** @return PhpParameter */ public function addUse($name) { $param = new PhpParameter(); return $this->uses[] = $param->setName($name); }