getParams() public method

public getParams ( )
Exemplo n.º 1
0
 function isVariadic()
 {
     foreach ($this->function->getParams() as $param) {
         if ($param->variadic) {
             return true;
         }
     }
     if ($this->function instanceof Function_ || $this->function instanceof \PhpParser\Node\Stmt\ClassMethod) {
         return VariadicCheckVisitor::isVariadic($this->function->getStmts());
     }
     return false;
 }
 public function store_function(Node\Stmt\Function_ $function)
 {
     $parameters = array_map(function ($param) {
         return array('name' => $param->name, 'default' => !empty($param->default), 'type' => ltrim((string) $param->type, '\\'));
     }, $function->getParams());
     $description = '';
     $return_types = array();
     if ($comments = $function->getAttribute('comments')) {
         $phpdoc = new DocBlock($comments[0]->getText());
         $description = $phpdoc->getShortDescription();
         if ($return = $phpdoc->getTagsByName('return')) {
             $return_types = array_map('ltrim', explode('|', $return[0]->getType()), array('\\'));
         }
         // short circuit @ignore functions
         if ($phpdoc->hasTag('ignore')) {
             return;
         }
     }
     $this->store_model('functions', array('function' => $function->name, 'namespace' => !empty($function->namespacedName) ? implode('\\', array_slice($function->namespacedName->parts, 0, -1)) : '', 'file' => $this->_current_file, 'line' => $function->getLine(), 'description' => $description, 'return_types' => json_encode($return_types), 'parameters' => json_encode($parameters)));
 }