Unified symbol-to-docblock server command
[hiphop-php.git] / hphp / hack / test / integration / data / lsp_exchanges / completion_legacy.expected
blob9fd6da2ce47c113b1d1d18d6e5bb49e8e435f740
2   {
3     "jsonrpc": "2.0",
4     "id": 1,
5     "result": {
6       "capabilities": {
7         "textDocumentSync": {
8           "openClose": true,
9           "change": 2,
10           "willSave": false,
11           "willSaveWaitUntil": false,
12           "save": {
13             "includeText": false
14           }
15         },
16         "hoverProvider": true,
17         "completionProvider": {
18           "resolveProvider": true,
19           "triggerCharacters": [
20             "$",
21             ">",
22             "\\",
23             ":",
24             "<",
25             "[",
26             "'",
27             "\""
28           ]
29         },
30         "signatureHelpProvider": {
31           "triggerCharacters": [
32             "(",
33             ","
34           ]
35         },
36         "definitionProvider": true,
37         "typeDefinitionProvider": true,
38         "referencesProvider": true,
39         "documentHighlightProvider": true,
40         "documentSymbolProvider": true,
41         "workspaceSymbolProvider": true,
42         "codeActionProvider": false,
43         "documentFormattingProvider": true,
44         "documentRangeFormattingProvider": true,
45         "documentOnTypeFormattingProvider": {
46           "firstTriggerCharacter": ";",
47           "moreTriggerCharacter": [
48             "}"
49           ]
50         },
51         "renameProvider": true,
52         "typeCoverageProvider": true,
53         "rageProvider": true
54       }
55     }
56   },
57   {
58     "jsonrpc": "2.0",
59     "id": 20,
60     "result": {
61       "isIncomplete": false,
62       "items": [
63         {
64           "label": "ab:cd:alpha",
65           "kind": 7,
66           "detail": "class",
67           "inlineDetail": "class",
68           "insertText": "ab:cd:alpha",
69           "insertTextFormat": 1,
70           "data": {
71             "filename": "${root_path}${path_sep}completion_extras.php",
72             "line": 9,
73             "char": 13,
74             "base_class": null
75           }
76         },
77         {
78           "label": "ab:cd:text",
79           "kind": 7,
80           "detail": "class",
81           "inlineDetail": "class",
82           "insertText": "ab:cd:text",
83           "insertTextFormat": 1,
84           "data": {
85             "filename": "${root_path}${path_sep}completion_extras.php",
86             "line": 4,
87             "char": 13,
88             "base_class": null
89           }
90         }
91       ]
92     }
93   },
94   {
95     "jsonrpc": "2.0",
96     "id": 30,
97     "result": {
98       "isIncomplete": false,
99       "items": [
100         {
101           "label": "ab:cd:alpha",
102           "kind": 7,
103           "detail": "class",
104           "inlineDetail": "class",
105           "insertText": "ab:cd:alpha",
106           "insertTextFormat": 1,
107           "data": {
108             "filename": "${root_path}${path_sep}completion_extras.php",
109             "line": 9,
110             "char": 13,
111             "base_class": null
112           }
113         },
114         {
115           "label": "ab:cd:text",
116           "kind": 7,
117           "detail": "class",
118           "inlineDetail": "class",
119           "insertText": "ab:cd:text",
120           "insertTextFormat": 1,
121           "data": {
122             "filename": "${root_path}${path_sep}completion_extras.php",
123             "line": 4,
124             "char": 13,
125             "base_class": null
126           }
127         }
128       ]
129     }
130   },
131   {
132     "jsonrpc": "2.0",
133     "id": 32,
134     "result": {
135       "isIncomplete": false,
136       "items": [
137         {
138           "label": "ab:cd:alpha",
139           "kind": 7,
140           "detail": "class",
141           "inlineDetail": "class",
142           "insertText": "ab:cd:alpha",
143           "insertTextFormat": 1,
144           "data": {
145             "filename": "${root_path}${path_sep}completion_extras.php",
146             "line": 9,
147             "char": 13,
148             "base_class": null
149           }
150         },
151         {
152           "label": "ab:cd:text",
153           "kind": 7,
154           "detail": "class",
155           "inlineDetail": "class",
156           "insertText": "ab:cd:text",
157           "insertTextFormat": 1,
158           "data": {
159             "filename": "${root_path}${path_sep}completion_extras.php",
160             "line": 4,
161             "char": 13,
162             "base_class": null
163           }
164         }
165       ]
166     }
167   },
168   {
169     "jsonrpc": "2.0",
170     "id": 40,
171     "result": {
172       "isIncomplete": false,
173       "items": [
174         {
175           "label": "width",
176           "kind": 10,
177           "detail": "?int",
178           "inlineDetail": "?int",
179           "insertText": "width",
180           "insertTextFormat": 1,
181           "data": {
182             "filename": "${root_path}${path_sep}completion_extras.php",
183             "line": 5,
184             "char": 27,
185             "base_class": "\\:ab:cd:text"
186           }
187         },
188         {
189           "label": "color",
190           "kind": 10,
191           "detail": "?string",
192           "inlineDetail": "?string",
193           "insertText": "color",
194           "insertTextFormat": 1,
195           "data": {
196             "filename": "${root_path}${path_sep}completion_extras.php",
197             "line": 5,
198             "char": 13,
199             "base_class": "\\:ab:cd:text"
200           }
201         }
202       ]
203     }
204   },
205   {
206     "jsonrpc": "2.0",
207     "id": 50,
208     "result": {
209       "isIncomplete": false,
210       "items": [
211         {
212           "label": "width",
213           "kind": 10,
214           "detail": "?int",
215           "inlineDetail": "?int",
216           "insertText": "width",
217           "insertTextFormat": 1,
218           "data": {
219             "filename": "${root_path}${path_sep}completion_extras.php",
220             "line": 5,
221             "char": 27,
222             "base_class": "\\:ab:cd:text"
223           }
224         },
225         {
226           "label": "color",
227           "kind": 10,
228           "detail": "?string",
229           "inlineDetail": "?string",
230           "insertText": "color",
231           "insertTextFormat": 1,
232           "data": {
233             "filename": "${root_path}${path_sep}completion_extras.php",
234             "line": 5,
235             "char": 13,
236             "base_class": "\\:ab:cd:text"
237           }
238         }
239       ]
240     }
241   },
242   {
243     "jsonrpc": "2.0",
244     "id": 60,
245     "result": {
246       "isIncomplete": false,
247       "items": [
248         {
249           "label": ":ab:cd:alpha",
250           "kind": 4,
251           "detail": "function(): :ab:cd:alpha",
252           "inlineDetail": "()",
253           "itemType": ":ab:cd:alpha",
254           "insertText": ":ab:cd:alpha",
255           "insertTextFormat": 1,
256           "data": {
257             "filename": "${root_path}${path_sep}completion_extras.php",
258             "line": 9,
259             "char": 13,
260             "base_class": "\\:ab:cd:alpha"
261           }
262         },
263         {
264           "label": ":ab:cd:text",
265           "kind": 4,
266           "detail": "function(): :ab:cd:text",
267           "inlineDetail": "()",
268           "itemType": ":ab:cd:text",
269           "insertText": ":ab:cd:text",
270           "insertTextFormat": 1,
271           "data": {
272             "filename": "${root_path}${path_sep}completion_extras.php",
273             "line": 4,
274             "char": 13,
275             "base_class": "\\:ab:cd:text"
276           }
277         }
278       ]
279     }
280   },
281   {
282     "jsonrpc": "2.0",
283     "id": 70,
284     "result": {
285       "isIncomplete": false,
286       "items": [
287         {
288           "label": ":ab:cd:alpha",
289           "kind": 4,
290           "detail": "function(): :ab:cd:alpha",
291           "inlineDetail": "()",
292           "itemType": ":ab:cd:alpha",
293           "insertText": ":ab:cd:alpha",
294           "insertTextFormat": 1,
295           "data": {
296             "filename": "${root_path}${path_sep}completion_extras.php",
297             "line": 9,
298             "char": 13,
299             "base_class": "\\:ab:cd:alpha"
300           }
301         },
302         {
303           "label": ":ab:cd:text",
304           "kind": 4,
305           "detail": "function(): :ab:cd:text",
306           "inlineDetail": "()",
307           "itemType": ":ab:cd:text",
308           "insertText": ":ab:cd:text",
309           "insertTextFormat": 1,
310           "data": {
311             "filename": "${root_path}${path_sep}completion_extras.php",
312             "line": 4,
313             "char": 13,
314             "base_class": "\\:ab:cd:text"
315           }
316         }
317       ]
318     }
319   },
320   {
321     "jsonrpc": "2.0",
322     "id": 80,
323     "result": {
324       "label": ":ab:cd:alpha",
325       "kind": 4,
326       "detail": "function(): :ab:cd:alpha",
327       "inlineDetail": "()",
328       "itemType": ":ab:cd:alpha",
329       "documentation": ":ab:cd:alpha docblock",
330       "insertText": ":ab:cd:alpha",
331       "insertTextFormat": 1,
332       "data": {
333         "filename": "${root_path}${path_sep}completion_extras.php",
334         "line": 9,
335         "char": 13
336       }
337     }
338   },
339   {
340     "jsonrpc": "2.0",
341     "id": 90,
342     "result": {
343       "isIncomplete": false,
344       "items": [
345         {
346           "label": ":width",
347           "kind": 10,
348           "detail": "?int",
349           "inlineDetail": "?int",
350           "insertText": ":width",
351           "insertTextFormat": 1,
352           "data": {
353             "filename": "${root_path}${path_sep}completion_extras.php",
354             "line": 5,
355             "char": 27,
356             "base_class": "\\:ab:cd:text"
357           }
358         },
359         {
360           "label": ":color",
361           "kind": 10,
362           "detail": "?string",
363           "inlineDetail": "?string",
364           "insertText": ":color",
365           "insertTextFormat": 1,
366           "data": {
367             "filename": "${root_path}${path_sep}completion_extras.php",
368             "line": 5,
369             "char": 13,
370             "base_class": "\\:ab:cd:text"
371           }
372         }
373       ]
374     }
375   },
376   {
377     "jsonrpc": "2.0",
378     "id": 100,
379     "result": {
380       "isIncomplete": false,
381       "items": [
382         {
383           "label": ":width",
384           "kind": 10,
385           "detail": "?int",
386           "inlineDetail": "?int",
387           "insertText": ":width",
388           "insertTextFormat": 1,
389           "data": {
390             "filename": "${root_path}${path_sep}completion_extras.php",
391             "line": 5,
392             "char": 27,
393             "base_class": "\\:ab:cd:text"
394           }
395         },
396         {
397           "label": ":color",
398           "kind": 10,
399           "detail": "?string",
400           "inlineDetail": "?string",
401           "insertText": ":color",
402           "insertTextFormat": 1,
403           "data": {
404             "filename": "${root_path}${path_sep}completion_extras.php",
405             "line": 5,
406             "char": 13,
407             "base_class": "\\:ab:cd:text"
408           }
409         }
410       ]
411     }
412   },
413   {
414     "jsonrpc": "2.0",
415     "id": 110,
416     "result": {
417       "isIncomplete": false,
418       "items": [
419         {
420           "label": "test_function",
421           "kind": 3,
422           "detail": "function(): void",
423           "inlineDetail": "()",
424           "itemType": "void",
425           "insertText": "test_function",
426           "insertTextFormat": 1,
427           "data": {
428             "filename": "${root_path}${path_sep}completion.php",
429             "line": 8,
430             "char": 10,
431             "base_class": null
432           }
433         }
434       ]
435     }
436   },
437   {
438     "jsonrpc": "2.0",
439     "id": 120,
440     "result": {
441       "label": "test_function",
442       "kind": 3,
443       "detail": "function(): void",
444       "inlineDetail": "()",
445       "itemType": "void",
446       "documentation": "test_function docblock.",
447       "insertText": "test_function",
448       "insertTextFormat": 1,
449       "data": {
450         "filename": "${root_path}${path_sep}completion.php",
451         "line": 8,
452         "char": 10
453       }
454     }
455   },
456   {
457     "jsonrpc": "2.0",
458     "id": 130,
459     "result": {
460       "isIncomplete": false,
461       "items": []
462     }
463   },
464   {
465     "jsonrpc": "2.0",
466     "id": 140,
467     "result": {
468       "isIncomplete": false,
469       "items": [
470         {
471           "label": "class",
472           "kind": 12,
473           "detail": "classname<this>",
474           "inlineDetail": "classname<this>",
475           "insertText": "class",
476           "insertTextFormat": 1,
477           "data": {
478             "filename": "${root_path}${path_sep}completion_extras.php",
479             "line": 13,
480             "char": 6,
481             "base_class": "\\Elsa"
482           }
483         },
484         {
485           "label": "Bard",
486           "kind": 12,
487           "detail": "Elsa",
488           "inlineDetail": "Elsa",
489           "insertText": "Bard",
490           "insertTextFormat": 1,
491           "data": {
492             "filename": "${root_path}${path_sep}completion_extras.php",
493             "line": 13,
494             "char": 12,
495             "base_class": "\\Elsa"
496           }
497         },
498         {
499           "label": "Alonso",
500           "kind": 12,
501           "detail": "Elsa",
502           "inlineDetail": "Elsa",
503           "insertText": "Alonso",
504           "insertTextFormat": 1,
505           "data": {
506             "filename": "${root_path}${path_sep}completion_extras.php",
507             "line": 13,
508             "char": 12,
509             "base_class": "\\Elsa"
510           }
511         },
512         {
513           "label": "isValid",
514           "kind": 2,
515           "detail": "function(mixed $value): bool",
516           "inlineDetail": "(mixed $value)",
517           "itemType": "bool",
518           "insertText": "isValid",
519           "insertTextFormat": 1,
520           "data": {
521             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
522             "line": 49,
523             "char": 32,
524             "base_class": "\\Elsa"
525           }
526         },
527         {
528           "label": "getValues",
529           "kind": 2,
530           "detail": "function(): darray<string, Elsa>",
531           "inlineDetail": "()",
532           "itemType": "darray<string, Elsa>",
533           "insertText": "getValues",
534           "insertTextFormat": 1,
535           "data": {
536             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
537             "line": 34,
538             "char": 32,
539             "base_class": "\\Elsa"
540           }
541         },
542         {
543           "label": "getNames",
544           "kind": 2,
545           "detail": "function(): darray<Elsa, string>",
546           "inlineDetail": "()",
547           "itemType": "darray<Elsa, string>",
548           "insertText": "getNames",
549           "insertTextFormat": 1,
550           "data": {
551             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
552             "line": 43,
553             "char": 32,
554             "base_class": "\\Elsa"
555           }
556         },
557         {
558           "label": "coerce",
559           "kind": 2,
560           "detail": "function(mixed $value): ?Elsa",
561           "inlineDetail": "(mixed $value)",
562           "itemType": "?Elsa",
563           "insertText": "coerce",
564           "insertTextFormat": 1,
565           "data": {
566             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
567             "line": 56,
568             "char": 32,
569             "base_class": "\\Elsa"
570           }
571         },
572         {
573           "label": "assertAll",
574           "kind": 2,
575           "detail": "function(Traversable<mixed> $values): Container<Elsa>",
576           "inlineDetail": "(Traversable<mixed> $values)",
577           "itemType": "Container<Elsa>",
578           "insertText": "assertAll",
579           "insertTextFormat": 1,
580           "data": {
581             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
582             "line": 70,
583             "char": 32,
584             "base_class": "\\Elsa"
585           }
586         },
587         {
588           "label": "assert",
589           "kind": 2,
590           "detail": "function(mixed $value): Elsa",
591           "inlineDetail": "(mixed $value)",
592           "itemType": "Elsa",
593           "insertText": "assert",
594           "insertTextFormat": 1,
595           "data": {
596             "filename": "${hhi_path}${path_sep}BuiltinEnum.hhi",
597             "line": 63,
598             "char": 32,
599             "base_class": "\\Elsa"
600           }
601         }
602       ]
603     }
604   },
605   {
606     "jsonrpc": "2.0",
607     "id": 150,
608     "result": {
609       "isIncomplete": false,
610       "items": []
611     }
612   },
613   {
614     "jsonrpc": "2.0",
615     "id": 999,
616     "result": null
617   }