private function parameter() {
    $node = new ParameterNode();
    if ($type = $this->optionalTypeHint()) {
      $node->addChild($type, 'typeHint');
    }
    $this->tryMatch('&', $node, 'reference');
    $this->tryMatch(T_ELLIPSIS, $node, 'variadic');
    $this->mustMatch(T_VARIABLE, $node, 'name', TRUE);
    if ($this->tryMatch('=', $node)) {
      $node->addChild($this->staticScalar(), 'value');
    }
    return $node;
  }
private function parameter() {
    $node = new ParameterNode();
    if ($type = $this->optionalTypeHint()) {
      $node->addChild($type, 'typeHint');
    }
    $this->tryMatch('&', $node, 'reference');
    $this->tryMatch(T_ELLIPSIS, $node, 'variadic');
    $this->mustMatch(T_VARIABLE, $node, 'name', TRUE);
    if ($this->tryMatch('=', $node)) {
      $node->addChild($this->staticScalar(), 'value');
    }
    return $node;
  }
private function parameter ( ) { $ node = new ParameterNode ( ) ; if ( $ type = $ this -> optionalTypeHint ( ) ) { $ node -> addChild ( $ type , 'typeHint' ) ; } $ this -> tryMatch ( '&' , $ node , 'reference' ) ; $ this -> tryMatch ( T_ELLIPSIS , $ node , 'variadic' ) ; $ this -> mustMatch ( T_VARIABLE , $ node , 'name' , TRUE ) ; if ( $ this -> tryMatch ( '=' , $ node ) ) { $ node -> addChild ( $ this -> staticScalar ( ) , 'value' ) ; } return $ node ; }
Parse parameter.
@return ParameterNode
Parse parameter .