You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.3 KiB
54 lines
1.3 KiB
11 years ago
|
<?php
|
||
|
/**
|
||
|
* @link http://www.yiiframework.com/
|
||
|
* @copyright Copyright (c) 2008 Yii Software LLC
|
||
|
* @license http://www.yiiframework.com/license/
|
||
|
*/
|
||
|
|
||
|
namespace yii\apidoc\models;
|
||
|
|
||
11 years ago
|
use yii\apidoc\helpers\PrettyPrinter;
|
||
11 years ago
|
use yii\base\Object;
|
||
|
|
||
11 years ago
|
/**
|
||
11 years ago
|
* Represents API documentation information for a [[FunctionDoc|function]] or [[MethodDoc|method]] `param`.
|
||
11 years ago
|
*
|
||
|
* @author Carsten Brandt <mail@cebe.cc>
|
||
|
* @since 2.0
|
||
|
*/
|
||
11 years ago
|
class ParamDoc extends Object
|
||
11 years ago
|
{
|
||
|
public $name;
|
||
11 years ago
|
public $typeHint;
|
||
11 years ago
|
public $isOptional;
|
||
|
public $defaultValue;
|
||
|
public $isPassedByReference;
|
||
11 years ago
|
|
||
|
// will be set by creating class
|
||
|
public $description;
|
||
|
public $type;
|
||
|
public $types;
|
||
|
|
||
|
/**
|
||
|
* @param \phpDocumentor\Reflection\FunctionReflector\ArgumentReflector $reflector
|
||
|
* @param array $config
|
||
|
*/
|
||
11 years ago
|
public function __construct($reflector = null, $config = [])
|
||
11 years ago
|
{
|
||
|
parent::__construct($config);
|
||
|
|
||
11 years ago
|
if ($reflector === null) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
11 years ago
|
$this->name = $reflector->getName();
|
||
|
$this->typeHint = $reflector->getType();
|
||
|
$this->isOptional = $reflector->getDefault() !== null;
|
||
11 years ago
|
|
||
|
// bypass $reflector->getDefault() for short array syntax
|
||
|
if ($reflector->getNode()->default) {
|
||
|
$this->defaultValue = PrettyPrinter::getRepresentationOfValue($reflector->getNode()->default);
|
||
|
}
|
||
11 years ago
|
$this->isPassedByReference = $reflector->isByRef();
|
||
|
}
|
||
11 years ago
|
}
|