Array ::= "{" ArrayEntry {"," ArrayEntry}* [","] "}"
array
private function Arrayx() {
  $array = $values = array();
  $this
    ->match(DocLexer::T_OPEN_CURLY_BRACES);
  $values[] = $this
    ->ArrayEntry();
  while ($this->lexer
    ->isNextToken(DocLexer::T_COMMA)) {
    $this
      ->match(DocLexer::T_COMMA);
    // optional trailing comma
    if ($this->lexer
      ->isNextToken(DocLexer::T_CLOSE_CURLY_BRACES)) {
      break;
    }
    $values[] = $this
      ->ArrayEntry();
  }
  $this
    ->match(DocLexer::T_CLOSE_CURLY_BRACES);
  foreach ($values as $value) {
    list($key, $val) = $value;
    if ($key !== null) {
      $array[$key] = $val;
    }
    else {
      $array[] = $val;
    }
  }
  return $array;
}