OLD | NEW |
1 <!doctype html> | 1 <!doctype html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <meta charset="UTF-8"/> | 4 <meta charset="UTF-8"/> |
5 <title>Analysis Server API Specification</title> | 5 <title>Analysis Server API Specification</title> |
6 </head> | 6 </head> |
7 <body> | 7 <body> |
8 <h1>Analysis Server API Specification</h1> | 8 <h1>Analysis Server API Specification</h1> |
9 <h1 style="color:#999999">Version <version>1.18.1</version></h1> | 9 <h1 style="color:#999999">Version |
10 <p> | 10 <version>1.18.1</version> |
11 This document contains a specification of the API provided by the | 11 </h1> |
12 analysis server. The API in this document is currently under | 12 <p> |
13 development. Changes to the API will be accompanied by an update to the | 13 This document contains a specification of the API provided by the |
14 protocol version number according to the principles of semantic | 14 analysis server. The API in this document is currently under |
15 versioning (<a href="http://semver.org/">semver.org</a>). | 15 development. Changes to the API will be accompanied by an update to the |
16 </p> | 16 protocol version number according to the principles of semantic |
17 <h2>Overview</h2> | 17 versioning (<a href="http://semver.org/">semver.org</a>). |
18 <p> | 18 </p> |
19 The analysis server API is a bi-directional client-server | 19 <h2>Overview</h2> |
20 API. The API is independent of the transport mechanism used, but | 20 <p> |
21 is heavily influenced by a model in which sockets or character | 21 The analysis server API is a bi-directional client-server |
22 streams are used to transport JSON-RPC encoded information. | 22 API. The API is independent of the transport mechanism used, but |
23 </p> | 23 is heavily influenced by a model in which sockets or character |
24 <h3>Transport Mechanism</h3> | 24 streams are used to transport JSON-RPC encoded information. |
25 <p> | 25 </p> |
26 The characters passed to the server are expected to be encoded | 26 <h3>Transport Mechanism</h3> |
27 using UTF-8. | 27 <p> |
28 </p> | 28 The characters passed to the server are expected to be encoded |
29 <p> | 29 using UTF-8. |
30 When character streams are used as the transport, messages are | 30 </p> |
31 delineated by newlines. This means, in particular, that the JSON | 31 <p> |
32 encoding process must not introduce newlines within a | 32 When character streams are used as the transport, messages are |
33 message. Note however that newlines are used in this document | 33 delineated by newlines. This means, in particular, that the JSON |
34 for readability. | 34 encoding process must not introduce newlines within a |
35 </p> | 35 message. Note however that newlines are used in this document |
36 <p> | 36 for readability. |
37 It is the client's responsibility to read output from the server to | 37 </p> |
38 avoid its blocking. | 38 <p> |
39 </p> | 39 It is the client's responsibility to read output from the server to |
40 <p> | 40 avoid its blocking. |
41 To ease interoperability with Lisp-based clients (which may not | 41 </p> |
42 be able to easily distinguish between empty lists, empty maps, | 42 <p> |
43 and null), client-to-server communication is allowed to replace | 43 To ease interoperability with Lisp-based clients (which may not |
44 any instance of "<tt>{}</tt>" or "<tt>[]</tt>" with null. The | 44 be able to easily distinguish between empty lists, empty maps, |
45 server will always properly represent empty lists as | 45 and null), client-to-server communication is allowed to replace |
46 "<tt>[]</tt>" and empty maps as "<tt>{}</tt>". | 46 any instance of "<tt>{}</tt>" or "<tt>[]</tt>" with null. The |
47 </p> | 47 server will always properly represent empty lists as |
48 <h3>Communication Structure</h3> | 48 "<tt>[]</tt>" and empty maps as "<tt>{}</tt>". |
49 <p> | 49 </p> |
50 Clients can make a request of the server and the server will | 50 <h3>Communication Structure</h3> |
51 provide a response for each request that it receives. While many | 51 <p> |
52 of the requests that can be made by a client are informational | 52 Clients can make a request of the server and the server will |
53 in nature, we have chosen to always return a response so that | 53 provide a response for each request that it receives. While many |
54 clients can know whether the request was received and was | 54 of the requests that can be made by a client are informational |
55 correct. | 55 in nature, we have chosen to always return a response so that |
56 </p> | 56 clients can know whether the request was received and was |
57 <p> | 57 correct. |
58 There is no guarantee concerning the order in which responses | 58 </p> |
59 will be returned, but there is a guarantee that the server will | 59 <p> |
60 process requests in the order in which they are sent as long as | 60 There is no guarantee concerning the order in which responses |
61 the transport mechanism also makes this guarantee. Responses can | 61 will be returned, but there is a guarantee that the server will |
62 be returned in an order that is different from the order in | 62 process requests in the order in which they are sent as long as |
63 which the requests were received because some requests take | 63 the transport mechanism also makes this guarantee. Responses can |
64 longer to process than others. | 64 be returned in an order that is different from the order in |
65 </p> | 65 which the requests were received because some requests take |
66 <p> | 66 longer to process than others. |
67 Every request is required to have two fields and may have two | 67 </p> |
68 additional optional fields. The first required field is the ‘id’ | 68 <p> |
69 field, which is only used by the server to associate a response | 69 Every request is required to have two fields and may have two |
70 with the request that generated the response. The second | 70 additional optional fields. The first required field is the ‘id’ |
71 required field is the ‘method’ field, which is used to determine | 71 field, which is only used by the server to associate a response |
72 what the server is being requested to do. One optional field is | 72 with the request that generated the response. The second |
73 the ‘params’ field, whose structure is dependent on the method | 73 required field is the ‘method’ field, which is used to determine |
74 being requested. The structure of this field is described with | 74 what the server is being requested to do. One optional field is |
75 each request for which it is required. The other optional field | 75 the ‘params’ field, whose structure is dependent on the method |
76 is the 'clientRequestTime' field, which is a number indicating | 76 being requested. The structure of this field is described with |
77 the time at which the client made the request (milliseconds | 77 each request for which it is required. The other optional field |
78 since epoch). Providing clientRequestTime helps us track | 78 is the 'clientRequestTime' field, which is a number indicating |
79 how responsive analysis server is to client requests | 79 the time at which the client made the request (milliseconds |
80 and better address any issues that occur. | 80 since epoch). Providing clientRequestTime helps us track |
81 </p> | 81 how responsive analysis server is to client requests |
82 <p> | 82 and better address any issues that occur. |
83 Every response has up to three fields. The first field is the | 83 </p> |
84 ‘id’ field, which is always present and whose value is the | 84 <p> |
85 identifier that was passed to the request that generated the | 85 Every response has up to three fields. The first field is the |
86 response. The second field is the ‘error’ field, which is only | 86 ‘id’ field, which is always present and whose value is the |
87 present if an error was encountered while processing the | 87 identifier that was passed to the request that generated the |
88 request. The third field is the ‘result’ field, whose structure | 88 response. The second field is the ‘error’ field, which is only |
89 is dependent on the method being responded to, and is described | 89 present if an error was encountered while processing the |
90 with each request that will produce it. | 90 request. The third field is the ‘result’ field, whose structure |
91 </p> | 91 is dependent on the method being responded to, and is described |
92 <p> | 92 with each request that will produce it. |
93 The server can also communicate to the clients by sending a | 93 </p> |
94 notification. The purpose of these notifications is to provide | 94 <p> |
95 information to clients as it becomes available rather than to | 95 The server can also communicate to the clients by sending a |
96 require that clients poll for it. Unless explicitly stated, all | 96 notification. The purpose of these notifications is to provide |
97 notifications are designed to return the complete information | 97 information to clients as it becomes available rather than to |
98 available at the time the notification is sent; clients are not | 98 require that clients poll for it. Unless explicitly stated, all |
99 required to update previously communicated | 99 notifications are designed to return the complete information |
100 results. Consequently, the server can and should return partial | 100 available at the time the notification is sent; clients are not |
101 results before all results are available. For example, the | 101 required to update previously communicated |
102 syntactic errors for a file can be returned as soon as the | 102 results. Consequently, the server can and should return partial |
103 syntactic analysis is complete, and both syntactic and semantic | 103 results before all results are available. For example, the |
104 errors can be returned together at a later time. | 104 syntactic errors for a file can be returned as soon as the |
105 </p> | 105 syntactic analysis is complete, and both syntactic and semantic |
106 <p> | 106 errors can be returned together at a later time. |
107 Each notification has two fields. The first field is the ‘event’ | 107 </p> |
108 field, which identifies the kind of notification. The second | 108 <p> |
109 field is the ‘params’ field, whose structure is dependent on the | 109 Each notification has two fields. The first field is the ‘event’ |
110 kind of notification being sent. The structure of this field is | 110 field, which identifies the kind of notification. The second |
111 described with each notification. | 111 field is the ‘params’ field, whose structure is dependent on the |
112 </p> | 112 kind of notification being sent. The structure of this field is |
113 <p> | 113 described with each notification. |
114 In order to be backward compatible, clients should ignore fields that were | 114 </p> |
115 not specified in the version of the API on which they were based. Clients | 115 <p> |
116 should also use the server.getVersion request to test that the version of | 116 In order to be backward compatible, clients should ignore fields that were |
117 the server supports an API before using it. | 117 not specified in the version of the API on which they were based. Clients |
118 </p> | 118 should also use the server.getVersion request to test that the version of |
119 <h3>Eventual Consistency</h3> | 119 the server supports an API before using it. |
120 <p> | 120 </p> |
121 The analysis server satisfies requests under the principle of | 121 <h3>Eventual Consistency</h3> |
122 <a href="https://en.wikipedia.org/wiki/Eventual_consistency">eventual cons
istency</a>. | 122 <p> |
123 That is, in some cases it may return responses with the currently availabl
e | 123 The analysis server satisfies requests under the principle of |
124 results while it's catching up with unprocessed changes. | 124 <a href="https://en.wikipedia.org/wiki/Eventual_consistency">eventual |
125 </p> | 125 consistency</a>. |
126 <h3>Domains</h3> | 126 That is, in some cases it may return responses with the currently available |
127 <p> | 127 results while it's catching up with unprocessed changes. |
128 For convenience, the API is divided into domains. Each domain is specified | 128 </p> |
129 in a separate section below. The specifications of the API’s refer to data | 129 <h3>Domains</h3> |
130 structures beyond the standard JSON primitives. These data structures are | 130 <p> |
131 documented in the section titled <a href="#types">Types</a>. | 131 For convenience, the API is divided into domains. Each domain is specified |
132 </p> | 132 in a separate section below. The specifications of the API’s refer to data |
133 <toc></toc> | 133 structures beyond the standard JSON primitives. These data structures are |
134 <h3>Command-line Arguments</h3> | 134 documented in the section titled <a href="#types">Types</a>. |
135 <p> | 135 </p> |
136 The command-line arguments that can be passed to the server. | 136 <toc></toc> |
137 </p> | 137 <h3>Command-line Arguments</h3> |
138 <h4>Options</h4> | 138 <p> |
139 <blockquote> | 139 The command-line arguments that can be passed to the server. |
140 <dl> | 140 </p> |
141 <dt>--client-id</dt> | 141 <h4>Options</h4> |
142 <dd> | 142 <blockquote> |
| 143 <dl> |
| 144 <dt>--client-id</dt> |
| 145 <dd> |
143 <p> | 146 <p> |
144 Specifies an identifier associated with the client. Used when | 147 Specifies an identifier associated with the client. Used when |
145 generating error reports. | 148 generating error reports. |
146 </p> | |
147 <p> | |
148 Clients are strongly encouraged to provide this information in | |
149 order to improve the quality of information that can be provided | |
150 to them. | |
151 </p> | |
152 </dd> | |
153 </dl> | |
154 <dl> | |
155 <dt>--client-version</dt> | |
156 <dd> | |
157 <p> | |
158 Specifies the version of the client that is communicating with | |
159 the server. Used when generating error reports. | |
160 </p> | 149 </p> |
161 <p> | 150 <p> |
162 Clients are strongly encouraged to provide this information in | 151 Clients are strongly encouraged to provide this information in |
163 order to improve the quality of information that can be provided | 152 order to improve the quality of information that can be provided |
164 to them. | 153 to them. |
165 </p> | 154 </p> |
166 </dd> | 155 </dd> |
167 </dl> | 156 </dl> |
168 <dl> | 157 <dl> |
169 <dt class="deprecated">--no-error-notification</dt> | 158 <dt>--client-version</dt> |
170 <dd> | 159 <dd> |
171 <p><b>Deprecated:</b> clients should no longer pass this option in</p> | |
172 Disable notifications about errors (see analysis.error). If this | |
173 flag is not specified then notifications will be sent for all | |
174 errors produced for all files in the actual analysis roots. | |
175 </dd> | |
176 </dl> | |
177 <dl> | |
178 <dt class="deprecated">--no-index</dt> | |
179 <dd> | |
180 <p><b>Deprecated:</b> clients should no longer pass this option in</p> | |
181 This flag used to disable the server from generating an index, but now | |
182 it has no effect. | |
183 </dd> | |
184 </dl> | |
185 <dl> | |
186 <dt class="deprecated">--file-read-mode</dt> | |
187 <dd> | |
188 <p><b>Deprecated:</b> clients should no longer pass this option in</p> | |
189 An enumeration of the ways files can be read from disk. Some clients | |
190 normalize end of line characters which would make the file offset and | |
191 range information incorrect. The default option is <tt>as-is</tt>, but | |
192 can also be set to <tt>normalize-eol-always</tt>. The default option | |
193 (<tt>as-is</tt>) reads files as they are on disk. The | |
194 <tt>normalize-eol-always</tt> option does the following: | |
195 <ul> | |
196 <li>'\r\n' is converted to '\n';</li> | |
197 <li>'\r' by itself is converted to '\n';</li> | |
198 <li>this happens regardless of the OS editor is running on.</li> | |
199 </ul> | |
200 </dd> | |
201 </dl> | |
202 </blockquote> | |
203 <domains></domains> | |
204 <domain name="server"> | |
205 <p> | 160 <p> |
206 The server domain contains API’s related to the execution of | 161 Specifies the version of the client that is communicating with |
207 the server. | 162 the server. Used when generating error reports. |
208 </p> | 163 </p> |
209 <request method="getVersion"> | 164 <p> |
210 <p>Return the version number of the analysis server.</p> | 165 Clients are strongly encouraged to provide this information in |
211 <result> | 166 order to improve the quality of information that can be provided |
212 <field name="version"> | 167 to them. |
| 168 </p> |
| 169 </dd> |
| 170 </dl> |
| 171 <dl> |
| 172 <dt class="deprecated">--no-error-notification</dt> |
| 173 <dd> |
| 174 <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
| 175 Disable notifications about errors (see analysis.error). If this |
| 176 flag is not specified then notifications will be sent for all |
| 177 errors produced for all files in the actual analysis roots. |
| 178 </dd> |
| 179 </dl> |
| 180 <dl> |
| 181 <dt class="deprecated">--no-index</dt> |
| 182 <dd> |
| 183 <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
| 184 This flag used to disable the server from generating an index, but now |
| 185 it has no effect. |
| 186 </dd> |
| 187 </dl> |
| 188 <dl> |
| 189 <dt class="deprecated">--file-read-mode</dt> |
| 190 <dd> |
| 191 <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
| 192 An enumeration of the ways files can be read from disk. Some clients |
| 193 normalize end of line characters which would make the file offset and |
| 194 range information incorrect. The default option is <tt>as-is</tt>, but |
| 195 can also be set to <tt>normalize-eol-always</tt>. The default option |
| 196 (<tt>as-is</tt>) reads files as they are on disk. The |
| 197 <tt>normalize-eol-always</tt> option does the following: |
| 198 <ul> |
| 199 <li>'\r\n' is converted to '\n';</li> |
| 200 <li>'\r' by itself is converted to '\n';</li> |
| 201 <li>this happens regardless of the OS editor is running on.</li> |
| 202 </ul> |
| 203 </dd> |
| 204 </dl> |
| 205 </blockquote> |
| 206 <domains></domains> |
| 207 <domain name="server"> |
| 208 <p> |
| 209 The server domain contains API’s related to the execution of |
| 210 the server. |
| 211 </p> |
| 212 <request method="getVersion"> |
| 213 <p>Return the version number of the analysis server.</p> |
| 214 <result> |
| 215 <field name="version"> |
| 216 <ref>String</ref> |
| 217 <p>The version number of the analysis server.</p> |
| 218 </field> |
| 219 </result> |
| 220 </request> |
| 221 <request method="shutdown"> |
| 222 <p> |
| 223 Cleanly shutdown the analysis server. Requests that are |
| 224 received after this request will not be processed. Requests |
| 225 that were received before this request, but for which a |
| 226 response has not yet been sent, will not be responded to. No |
| 227 further responses or notifications will be sent after the |
| 228 response to this request has been sent. |
| 229 </p> |
| 230 </request> |
| 231 <request method="setSubscriptions"> |
| 232 <p> |
| 233 Subscribe for services. All previous subscriptions are |
| 234 replaced by the given set of services. |
| 235 </p> |
| 236 <p> |
| 237 It is an error if any of the elements in the list are not |
| 238 valid services. If there is an error, then the current |
| 239 subscriptions will remain unchanged. |
| 240 </p> |
| 241 <params> |
| 242 <field name="subscriptions"> |
| 243 <list> |
| 244 <ref>ServerService</ref> |
| 245 </list> |
| 246 <p>A list of the services being subscribed to.</p> |
| 247 </field> |
| 248 </params> |
| 249 </request> |
| 250 <notification event="connected"> |
| 251 <p> |
| 252 Reports that the server is running. This notification is |
| 253 issued once after the server has started running but before |
| 254 any requests are processed to let the client know that it |
| 255 started correctly. |
| 256 </p> |
| 257 <p> |
| 258 It is not possible to subscribe to or unsubscribe from this |
| 259 notification. |
| 260 </p> |
| 261 <params> |
| 262 <field name="version"> |
| 263 <ref>String</ref> |
| 264 <p>The version number of the analysis server.</p> |
| 265 </field> |
| 266 <field name="pid"> |
| 267 <ref>int</ref> |
| 268 <p>The process id of the analysis server process.</p> |
| 269 </field> |
| 270 <field name="sessionId" optional="true"> |
| 271 <ref>String</ref> |
| 272 <p>The session id for this session.</p> |
| 273 </field> |
| 274 </params> |
| 275 </notification> |
| 276 <notification event="error"> |
| 277 <p> |
| 278 Reports that an unexpected error has occurred while |
| 279 executing the server. This notification is not used for |
| 280 problems with specific requests (which are returned as part |
| 281 of the response) but is used for exceptions that occur while |
| 282 performing other tasks, such as analysis or preparing |
| 283 notifications. |
| 284 </p> |
| 285 <p> |
| 286 It is not possible to subscribe to or unsubscribe from this |
| 287 notification. |
| 288 </p> |
| 289 <params> |
| 290 <field name="isFatal"> |
| 291 <ref>bool</ref> |
| 292 <p> |
| 293 True if the error is a fatal error, meaning that the |
| 294 server will shutdown automatically after sending this |
| 295 notification. |
| 296 </p> |
| 297 </field> |
| 298 <field name="message"> |
| 299 <ref>String</ref> |
| 300 <p> |
| 301 The error message indicating what kind of error was |
| 302 encountered. |
| 303 </p> |
| 304 </field> |
| 305 <field name="stackTrace"> |
| 306 <ref>String</ref> |
| 307 <p> |
| 308 The stack trace associated with the generation of the |
| 309 error, used for debugging the server. |
| 310 </p> |
| 311 </field> |
| 312 </params> |
| 313 </notification> |
| 314 <notification event="status"> |
| 315 <p> |
| 316 Reports the current status of the server. Parameters are |
| 317 omitted if there has been no change in the status |
| 318 represented by that parameter. |
| 319 </p> |
| 320 <p> |
| 321 This notification is not subscribed to by default. Clients |
| 322 can subscribe by including the value <tt>"STATUS"</tt> in |
| 323 the list of services passed in a server.setSubscriptions |
| 324 request. |
| 325 </p> |
| 326 <params> |
| 327 <field name="analysis" optional="true"> |
| 328 <ref>AnalysisStatus</ref> |
| 329 <p> |
| 330 The current status of analysis, including whether |
| 331 analysis is being performed and if so what is being |
| 332 analyzed. |
| 333 </p> |
| 334 </field> |
| 335 <field name="pub" optional="true"> |
| 336 <ref>PubStatus</ref> |
| 337 <p> |
| 338 The current status of pub execution, indicating whether we are |
| 339 currently running pub. |
| 340 </p> |
| 341 </field> |
| 342 </params> |
| 343 </notification> |
| 344 </domain> |
| 345 <domain name="analysis"> |
| 346 <p> |
| 347 The analysis domain contains API’s related to the analysis of |
| 348 files. |
| 349 </p> |
| 350 <request method="getErrors"> |
| 351 <p> |
| 352 Return the errors associated with the given file. If the |
| 353 errors for the given file have not yet been computed, or the |
| 354 most recently computed errors for the given file are out of |
| 355 date, then the response for this request will be delayed |
| 356 until they have been computed. If some or all of the errors |
| 357 for the file cannot be computed, then the subset of the |
| 358 errors that can be computed will be returned and the |
| 359 response will contain an error to indicate why the errors |
| 360 could not be computed. If the content of the file changes after this |
| 361 request was received but before a response could be sent, then an |
| 362 error of type <tt>CONTENT_MODIFIED</tt> will be generated. |
| 363 </p> |
| 364 <p> |
| 365 This request is intended to be used by clients that cannot |
| 366 asynchronously apply updated error information. Clients that |
| 367 <b>can</b> apply error information as it becomes available |
| 368 should use the information provided by the 'analysis.errors' |
| 369 notification. |
| 370 </p> |
| 371 <p> |
| 372 If a request is made for a file which does not exist, or |
| 373 which is not currently subject to analysis (e.g. because it |
| 374 is not associated with any analysis root specified to |
| 375 analysis.setAnalysisRoots), an error of type |
| 376 <tt>GET_ERRORS_INVALID_FILE</tt> will be generated. |
| 377 </p> |
| 378 <params> |
| 379 <field name="file"> |
| 380 <ref>FilePath</ref> |
| 381 <p> |
| 382 The file for which errors are being requested. |
| 383 </p> |
| 384 </field> |
| 385 </params> |
| 386 <result> |
| 387 <field name="errors"> |
| 388 <list> |
| 389 <ref>AnalysisError</ref> |
| 390 </list> |
| 391 <p> |
| 392 The errors associated with the file. |
| 393 </p> |
| 394 </field> |
| 395 </result> |
| 396 </request> |
| 397 <request method="getHover"> |
| 398 <p> |
| 399 Return the hover information associate with the given |
| 400 location. If some or all of the hover information is not |
| 401 available at the time this request is processed the |
| 402 information will be omitted from the response. |
| 403 </p> |
| 404 <params> |
| 405 <field name="file"> |
| 406 <ref>FilePath</ref> |
| 407 <p> |
| 408 The file in which hover information is being requested. |
| 409 </p> |
| 410 </field> |
| 411 <field name="offset"> |
| 412 <ref>int</ref> |
| 413 <p> |
| 414 The offset for which hover information is being requested. |
| 415 </p> |
| 416 </field> |
| 417 </params> |
| 418 <result> |
| 419 <field name="hovers"> |
| 420 <list> |
| 421 <ref>HoverInformation</ref> |
| 422 </list> |
| 423 <p> |
| 424 The hover information associated with the |
| 425 location. The list will be empty if no information |
| 426 could be determined for the location. The list can |
| 427 contain multiple items if the file is being analyzed |
| 428 in multiple contexts in conflicting ways (such as a |
| 429 part that is included in multiple libraries). |
| 430 </p> |
| 431 </field> |
| 432 </result> |
| 433 </request> |
| 434 <request method="getReachableSources"> |
| 435 <p> |
| 436 Return the transitive closure of reachable sources for a given file. |
| 437 </p> |
| 438 <p> |
| 439 If a request is made for a file which does not exist, or |
| 440 which is not currently subject to analysis (e.g. because it |
| 441 is not associated with any analysis root specified to |
| 442 analysis.setAnalysisRoots), an error of type |
| 443 <tt>GET_REACHABLE_SOURCES_INVALID_FILE</tt> will be generated. |
| 444 </p> |
| 445 <params> |
| 446 <field name="file"> |
| 447 <ref>FilePath</ref> |
| 448 <p> |
| 449 The file for which reachable source information is being requested. |
| 450 </p> |
| 451 </field> |
| 452 </params> |
| 453 <result> |
| 454 <field name="sources"> |
| 455 <map> |
| 456 <key> |
213 <ref>String</ref> | 457 <ref>String</ref> |
214 <p>The version number of the analysis server.</p> | 458 </key> |
215 </field> | 459 <value> |
216 </result> | 460 <list> |
217 </request> | 461 <ref>String</ref> |
218 <request method="shutdown"> | 462 </list> |
219 <p> | 463 </value> |
220 Cleanly shutdown the analysis server. Requests that are | 464 </map> |
221 received after this request will not be processed. Requests | 465 <p> |
222 that were received before this request, but for which a | 466 A mapping from source URIs to directly reachable source URIs. For |
223 response has not yet been sent, will not be responded to. No | 467 example, |
224 further responses or notifications will be sent after the | 468 a file "foo.dart" that imports "bar.dart" would have the corresponding |
225 response to this request has been sent. | 469 mapping |
226 </p> | 470 { "file:///foo.dart" : ["file:///bar.dart"] }. If "bar.dart" has |
227 </request> | 471 further imports |
228 <request method="setSubscriptions"> | 472 (or exports) there will be a mapping from the URI "file:///bar.dart" |
229 <p> | 473 to them. |
230 Subscribe for services. All previous subscriptions are | 474 To check if a specific URI is reachable from a given file, clients can |
231 replaced by the given set of services. | 475 check |
232 </p> | 476 for its presence in the resulting key set. |
233 <p> | 477 </p> |
234 It is an error if any of the elements in the list are not | 478 </field> |
235 valid services. If there is an error, then the current | 479 </result> |
236 subscriptions will remain unchanged. | 480 </request> |
237 </p> | 481 <request method="getLibraryDependencies"> |
238 <params> | 482 <p> |
239 <field name="subscriptions"> | 483 Return library dependency information for use in client-side indexing |
240 <list><ref>ServerService</ref></list> | 484 and package URI resolution. |
241 <p>A list of the services being subscribed to.</p> | 485 </p> |
242 </field> | 486 <p> |
243 </params> | 487 Clients that are only using the libraries field should consider using the |
244 </request> | 488 analyzedFiles notification instead. |
245 <notification event="connected"> | 489 </p> |
246 <p> | 490 <result> |
247 Reports that the server is running. This notification is | 491 <field name="libraries"> |
248 issued once after the server has started running but before | 492 <list> |
249 any requests are processed to let the client know that it | 493 <ref>FilePath</ref> |
250 started correctly. | 494 </list> |
251 </p> | 495 <p> |
252 <p> | 496 A list of the paths of library elements referenced by |
253 It is not possible to subscribe to or unsubscribe from this | 497 files in existing analysis roots. |
254 notification. | 498 </p> |
255 </p> | 499 </field> |
256 <params> | 500 <field name="packageMap"> |
257 <field name="version"> | 501 <map> |
| 502 <key> |
258 <ref>String</ref> | 503 <ref>String</ref> |
259 <p>The version number of the analysis server.</p> | 504 </key> |
260 </field> | 505 <value> |
261 <field name="pid"> | |
262 <ref>int</ref> | |
263 <p>The process id of the analysis server process.</p> | |
264 </field> | |
265 <field name="sessionId" optional="true"> | |
266 <ref>String</ref> | |
267 <p>The session id for this session.</p> | |
268 </field> | |
269 </params> | |
270 </notification> | |
271 <notification event="error"> | |
272 <p> | |
273 Reports that an unexpected error has occurred while | |
274 executing the server. This notification is not used for | |
275 problems with specific requests (which are returned as part | |
276 of the response) but is used for exceptions that occur while | |
277 performing other tasks, such as analysis or preparing | |
278 notifications. | |
279 </p> | |
280 <p> | |
281 It is not possible to subscribe to or unsubscribe from this | |
282 notification. | |
283 </p> | |
284 <params> | |
285 <field name="isFatal"> | |
286 <ref>bool</ref> | |
287 <p> | |
288 True if the error is a fatal error, meaning that the | |
289 server will shutdown automatically after sending this | |
290 notification. | |
291 </p> | |
292 </field> | |
293 <field name="message"> | |
294 <ref>String</ref> | |
295 <p> | |
296 The error message indicating what kind of error was | |
297 encountered. | |
298 </p> | |
299 </field> | |
300 <field name="stackTrace"> | |
301 <ref>String</ref> | |
302 <p> | |
303 The stack trace associated with the generation of the | |
304 error, used for debugging the server. | |
305 </p> | |
306 </field> | |
307 </params> | |
308 </notification> | |
309 <notification event="status"> | |
310 <p> | |
311 Reports the current status of the server. Parameters are | |
312 omitted if there has been no change in the status | |
313 represented by that parameter. | |
314 </p> | |
315 <p> | |
316 This notification is not subscribed to by default. Clients | |
317 can subscribe by including the value <tt>"STATUS"</tt> in | |
318 the list of services passed in a server.setSubscriptions | |
319 request. | |
320 </p> | |
321 <params> | |
322 <field name="analysis" optional="true"> | |
323 <ref>AnalysisStatus</ref> | |
324 <p> | |
325 The current status of analysis, including whether | |
326 analysis is being performed and if so what is being | |
327 analyzed. | |
328 </p> | |
329 </field> | |
330 <field name="pub" optional="true"> | |
331 <ref>PubStatus</ref> | |
332 <p> | |
333 The current status of pub execution, indicating whether we are | |
334 currently running pub. | |
335 </p> | |
336 </field> | |
337 </params> | |
338 </notification> | |
339 </domain> | |
340 <domain name="analysis"> | |
341 <p> | |
342 The analysis domain contains API’s related to the analysis of | |
343 files. | |
344 </p> | |
345 <request method="getErrors"> | |
346 <p> | |
347 Return the errors associated with the given file. If the | |
348 errors for the given file have not yet been computed, or the | |
349 most recently computed errors for the given file are out of | |
350 date, then the response for this request will be delayed | |
351 until they have been computed. If some or all of the errors | |
352 for the file cannot be computed, then the subset of the | |
353 errors that can be computed will be returned and the | |
354 response will contain an error to indicate why the errors | |
355 could not be computed. If the content of the file changes after this | |
356 request was received but before a response could be sent, then an | |
357 error of type <tt>CONTENT_MODIFIED</tt> will be generated. | |
358 </p> | |
359 <p> | |
360 This request is intended to be used by clients that cannot | |
361 asynchronously apply updated error information. Clients that | |
362 <b>can</b> apply error information as it becomes available | |
363 should use the information provided by the 'analysis.errors' | |
364 notification. | |
365 </p> | |
366 <p> | |
367 If a request is made for a file which does not exist, or | |
368 which is not currently subject to analysis (e.g. because it | |
369 is not associated with any analysis root specified to | |
370 analysis.setAnalysisRoots), an error of type | |
371 <tt>GET_ERRORS_INVALID_FILE</tt> will be generated. | |
372 </p> | |
373 <params> | |
374 <field name="file"> | |
375 <ref>FilePath</ref> | |
376 <p> | |
377 The file for which errors are being requested. | |
378 </p> | |
379 </field> | |
380 </params> | |
381 <result> | |
382 <field name="errors"> | |
383 <list><ref>AnalysisError</ref></list> | |
384 <p> | |
385 The errors associated with the file. | |
386 </p> | |
387 </field> | |
388 </result> | |
389 </request> | |
390 <request method="getHover"> | |
391 <p> | |
392 Return the hover information associate with the given | |
393 location. If some or all of the hover information is not | |
394 available at the time this request is processed the | |
395 information will be omitted from the response. | |
396 </p> | |
397 <params> | |
398 <field name="file"> | |
399 <ref>FilePath</ref> | |
400 <p> | |
401 The file in which hover information is being requested. | |
402 </p> | |
403 </field> | |
404 <field name="offset"> | |
405 <ref>int</ref> | |
406 <p> | |
407 The offset for which hover information is being requested. | |
408 </p> | |
409 </field> | |
410 </params> | |
411 <result> | |
412 <field name="hovers"> | |
413 <list><ref>HoverInformation</ref></list> | |
414 <p> | |
415 The hover information associated with the | |
416 location. The list will be empty if no information | |
417 could be determined for the location. The list can | |
418 contain multiple items if the file is being analyzed | |
419 in multiple contexts in conflicting ways (such as a | |
420 part that is included in multiple libraries). | |
421 </p> | |
422 </field> | |
423 </result> | |
424 </request> | |
425 <request method="getReachableSources"> | |
426 <p> | |
427 Return the transitive closure of reachable sources for a given file. | |
428 </p> | |
429 <p> | |
430 If a request is made for a file which does not exist, or | |
431 which is not currently subject to analysis (e.g. because it | |
432 is not associated with any analysis root specified to | |
433 analysis.setAnalysisRoots), an error of type | |
434 <tt>GET_REACHABLE_SOURCES_INVALID_FILE</tt> will be generated. | |
435 </p> | |
436 <params> | |
437 <field name="file"> | |
438 <ref>FilePath</ref> | |
439 <p> | |
440 The file for which reachable source information is being requested
. | |
441 </p> | |
442 </field> | |
443 </params> | |
444 <result> | |
445 <field name="sources"> | |
446 <map> | 506 <map> |
447 <key><ref>String</ref></key> | 507 <key> |
448 <value><list><ref>String</ref></list></value> | 508 <ref>String</ref> |
449 </map> | 509 </key> |
450 <p> | |
451 A mapping from source URIs to directly reachable source URIs. For
example, | |
452 a file "foo.dart" that imports "bar.dart" would have the correspon
ding mapping | |
453 { "file:///foo.dart" : ["file:///bar.dart"] }. If "bar.dart" has
further imports | |
454 (or exports) there will be a mapping from the URI "file:///bar.dar
t" to them. | |
455 To check if a specific URI is reachable from a given file, clients
can check | |
456 for its presence in the resulting key set. | |
457 </p> | |
458 </field> | |
459 </result> | |
460 </request> | |
461 <request method="getLibraryDependencies"> | |
462 <p> | |
463 Return library dependency information for use in client-side indexing | |
464 and package URI resolution. | |
465 </p> | |
466 <p> | |
467 Clients that are only using the libraries field should consider using th
e | |
468 analyzedFiles notification instead. | |
469 </p> | |
470 <result> | |
471 <field name="libraries"> | |
472 <list><ref>FilePath</ref></list> | |
473 <p> | |
474 A list of the paths of library elements referenced by | |
475 files in existing analysis roots. | |
476 </p> | |
477 </field> | |
478 <field name="packageMap"> | |
479 <map> | |
480 <key><ref>String</ref></key> | |
481 <value> | |
482 <map> | |
483 <key><ref>String</ref></key> | |
484 <value><list><ref>FilePath</ref></list></value> | |
485 </map> | |
486 </value> | |
487 </map> | |
488 <p> | |
489 A mapping from context source roots to package maps which map | |
490 package names to source directories for use in client-side | |
491 package URI resolution. | |
492 </p> | |
493 </field> | |
494 </result> | |
495 </request> | |
496 <request method="getNavigation"> | |
497 <p> | |
498 Return the navigation information associated with the given region of | |
499 the given file. If the navigation information for the given file has | |
500 not yet been computed, or the most recently computed navigation | |
501 information for the given file is out of date, then the response for | |
502 this request will be delayed until it has been computed. If the | |
503 content of the file changes after this request was received but before | |
504 a response could be sent, then an error of type | |
505 <tt>CONTENT_MODIFIED</tt> will be generated. | |
506 </p> | |
507 <p> | |
508 If a navigation region overlaps (but extends either before or after) | |
509 the given region of the file it will be included in the result. This | |
510 means that it is theoretically possible to get the same navigation | |
511 region in response to multiple requests. Clients can avoid this by | |
512 always choosing a region that starts at the beginning of a line and | |
513 ends at the end of a (possibly different) line in the file. | |
514 </p> | |
515 <p> | |
516 If a request is made for a file which does not exist, or | |
517 which is not currently subject to analysis (e.g. because it | |
518 is not associated with any analysis root specified to | |
519 analysis.setAnalysisRoots), an error of type | |
520 <tt>GET_NAVIGATION_INVALID_FILE</tt> will be generated. | |
521 </p> | |
522 <params> | |
523 <field name="file"> | |
524 <ref>FilePath</ref> | |
525 <p> | |
526 The file in which navigation information is being requested. | |
527 </p> | |
528 </field> | |
529 <field name="offset"> | |
530 <ref>int</ref> | |
531 <p> | |
532 The offset of the region for which navigation information is being | |
533 requested. | |
534 </p> | |
535 </field> | |
536 <field name="length"> | |
537 <ref>int</ref> | |
538 <p> | |
539 The length of the region for which navigation information is being | |
540 requested. | |
541 </p> | |
542 </field> | |
543 </params> | |
544 <result> | |
545 <field name="files"> | |
546 <list><ref>FilePath</ref></list> | |
547 <p> | |
548 A list of the paths of files that are referenced by the navigation | |
549 targets. | |
550 </p> | |
551 </field> | |
552 <field name="targets"> | |
553 <list><ref>NavigationTarget</ref></list> | |
554 <p> | |
555 A list of the navigation targets that are referenced by the | |
556 navigation regions. | |
557 </p> | |
558 </field> | |
559 <field name="regions"> | |
560 <list><ref>NavigationRegion</ref></list> | |
561 <p> | |
562 A list of the navigation regions within the requested region of | |
563 the file. | |
564 </p> | |
565 </field> | |
566 </result> | |
567 </request> | |
568 <request method="reanalyze"> | |
569 <p> | |
570 Force the re-analysis of everything contained in the specified | |
571 analysis roots. This will cause all previously computed analysis | |
572 results to be discarded and recomputed, and will cause all subscribed | |
573 notifications to be re-sent. | |
574 </p> | |
575 <p> | |
576 If no analysis roots are provided, then all current analysis roots | |
577 will be re-analyzed. If an empty list of analysis roots is provided, | |
578 then nothing will be re-analyzed. If the list contains one or more | |
579 paths that are not currently analysis roots, then an error of type | |
580 <tt>INVALID_ANALYSIS_ROOT</tt> will be generated. | |
581 </p> | |
582 <params> | |
583 <field name="roots" optional="true"> | |
584 <list><ref>FilePath</ref></list> | |
585 <p> | |
586 A list of the analysis roots that are to be re-analyzed. | |
587 </p> | |
588 </field> | |
589 </params> | |
590 </request> | |
591 <request method="setAnalysisRoots"> | |
592 <p> | |
593 Sets the root paths used to determine which files to analyze. The set | |
594 of files to be analyzed are all of the files in one of the root paths | |
595 that are not either explicitly or implicitly excluded. A file is | |
596 explicitly excluded if it is in one of the excluded paths. A file is | |
597 implicitly excluded if it is in a subdirectory of one of the root | |
598 paths where the name of the subdirectory starts with a period (that | |
599 is, a hidden directory). | |
600 </p> | |
601 <p> | |
602 Note that this request determines the set of requested | |
603 analysis roots. The actual set of analysis roots at any | |
604 given time is the intersection of this set with the set of | |
605 files and directories actually present on the | |
606 filesystem. When the filesystem changes, the actual set of | |
607 analysis roots is automatically updated, but the set of | |
608 requested analysis roots is unchanged. This means that if | |
609 the client sets an analysis root before the root becomes | |
610 visible to server in the filesystem, there is no error; once | |
611 the server sees the root in the filesystem it will start | |
612 analyzing it. Similarly, server will stop analyzing files | |
613 that are removed from the file system but they will remain | |
614 in the set of requested roots. | |
615 </p> | |
616 <p> | |
617 If an included path represents a file, then server will look | |
618 in the directory containing the file for a pubspec.yaml | |
619 file. If none is found, then the parents of the directory | |
620 will be searched until such a file is found or the root of | |
621 the file system is reached. If such a file is found, it will | |
622 be used to resolve package: URI’s within the file. | |
623 </p> | |
624 <params> | |
625 <field name="included"> | |
626 <list><ref>FilePath</ref></list> | |
627 <p> | |
628 A list of the files and directories that should be | |
629 analyzed. | |
630 </p> | |
631 </field> | |
632 <field name="excluded"> | |
633 <list><ref>FilePath</ref></list> | |
634 <p> | |
635 A list of the files and directories within the | |
636 included directories that should not be analyzed. | |
637 </p> | |
638 </field> | |
639 <field name="packageRoots" optional="true"> | |
640 <map> | |
641 <key><ref>FilePath</ref></key> | |
642 <value><ref>FilePath</ref></value> | |
643 </map> | |
644 <p> | |
645 A mapping from source directories to package roots | |
646 that should override the normal package: URI resolution | |
647 mechanism. | |
648 </p> | |
649 <p> | |
650 If a package root is a directory, then | |
651 the analyzer will behave as though the associated | |
652 source directory in the map contains a special | |
653 pubspec.yaml file which resolves any package: URI to the | |
654 corresponding path within that package root directory. The | |
655 effect is the same as specifying the package root directory as | |
656 a "--package_root" parameter to the Dart VM when | |
657 executing any Dart file inside the source directory. | |
658 </p> | |
659 <p> | |
660 If a package root is a file, then the analyzer | |
661 will behave as though that file is a ".packages" file in the | |
662 source directory. The effect is the same as specifying the file | |
663 as a "--packages" parameter to the Dart VM when | |
664 executing any Dart file inside the source directory. | |
665 </p> | |
666 <p> | |
667 Files in any directories that are not overridden by this | |
668 mapping have their package: URI's resolved using the | |
669 normal pubspec.yaml mechanism. If this field is absent, | |
670 or the empty map is specified, that indicates that the | |
671 normal pubspec.yaml mechanism should always be used. | |
672 </p> | |
673 </field> | |
674 </params> | |
675 </request> | |
676 <request method="setGeneralSubscriptions"> | |
677 <p> | |
678 Subscribe for general services (that is, services that are not | |
679 specific to individual files). All previous subscriptions are replaced | |
680 by the given set of services. | |
681 </p> | |
682 <p> | |
683 It is an error if any of the elements in the list are not valid | |
684 services. If there is an error, then the current subscriptions will | |
685 remain unchanged. | |
686 </p> | |
687 <params> | |
688 <field name="subscriptions"> | |
689 <list><ref>GeneralAnalysisService</ref></list> | |
690 <p>A list of the services being subscribed to.</p> | |
691 </field> | |
692 </params> | |
693 </request> | |
694 <request method="setPriorityFiles"> | |
695 <p> | |
696 Set the priority files to the files in the given list. A | |
697 priority file is a file that is given priority when | |
698 scheduling which analysis work to do first. The list | |
699 typically contains those files that are visible to the user | |
700 and those for which analysis results will have the biggest | |
701 impact on the user experience. The order of the files within | |
702 the list is significant: the first file will be given higher | |
703 priority than the second, the second higher priority than | |
704 the third, and so on. | |
705 </p> | |
706 <p> | |
707 Note that this request determines the set of requested | |
708 priority files. The actual set of priority files is the | |
709 intersection of the requested set of priority files with the | |
710 set of files currently subject to analysis. (See | |
711 analysis.setSubscriptions for a description of files that | |
712 are subject to analysis.) | |
713 </p> | |
714 <p> | |
715 If a requested priority file is a directory it is ignored, | |
716 but remains in the set of requested priority files so that | |
717 if it later becomes a file it can be included in the set of | |
718 actual priority files. | |
719 </p> | |
720 <params> | |
721 <field name="files"> | |
722 <list><ref>FilePath</ref></list> | |
723 <p> | |
724 The files that are to be a priority for analysis. | |
725 </p> | |
726 </field> | |
727 </params> | |
728 </request> | |
729 <request method="setSubscriptions"> | |
730 <p> | |
731 Subscribe for services that are specific to individual files. | |
732 All previous subscriptions are replaced by the current set of | |
733 subscriptions. If a given service is not included as a key in the map | |
734 then no files will be subscribed to the service, exactly as if the | |
735 service had been included in the map with an explicit empty list of | |
736 files. | |
737 </p> | |
738 <p> | |
739 Note that this request determines the set of requested | |
740 subscriptions. The actual set of subscriptions at any given | |
741 time is the intersection of this set with the set of files | |
742 currently subject to analysis. The files currently subject | |
743 to analysis are the set of files contained within an actual | |
744 analysis root but not excluded, plus all of the files | |
745 transitively reachable from those files via import, export | |
746 and part directives. (See analysis.setAnalysisRoots for an | |
747 explanation of how the actual analysis roots are | |
748 determined.) When the actual analysis roots change, the | |
749 actual set of subscriptions is automatically updated, but | |
750 the set of requested subscriptions is unchanged. | |
751 </p> | |
752 <p> | |
753 If a requested subscription is a directory it is ignored, | |
754 but remains in the set of requested subscriptions so that if | |
755 it later becomes a file it can be included in the set of | |
756 actual subscriptions. | |
757 </p> | |
758 <p> | |
759 It is an error if any of the keys in the map are not valid | |
760 services. If there is an error, then the existing | |
761 subscriptions will remain unchanged. | |
762 </p> | |
763 <params> | |
764 <field name="subscriptions"> | |
765 <map> | |
766 <key><ref>AnalysisService</ref></key> | |
767 <value> | 510 <value> |
768 <list><ref>FilePath</ref></list> | 511 <list> |
| 512 <ref>FilePath</ref> |
| 513 </list> |
769 </value> | 514 </value> |
770 </map> | 515 </map> |
771 <p> | 516 </value> |
772 A table mapping services to a list of the files being | 517 </map> |
773 subscribed to the service. | 518 <p> |
774 </p> | 519 A mapping from context source roots to package maps which map |
775 </field> | 520 package names to source directories for use in client-side |
776 </params> | 521 package URI resolution. |
777 </request> | 522 </p> |
778 <request method="updateContent"> | 523 </field> |
779 <p> | 524 </result> |
780 Update the content of one or more files. Files that were | 525 </request> |
781 previously updated but not included in this update remain | 526 <request method="getNavigation"> |
782 unchanged. This effectively represents an overlay of the | 527 <p> |
783 filesystem. The files whose content is overridden are | 528 Return the navigation information associated with the given region of |
784 therefore seen by server as being files with the given | 529 the given file. If the navigation information for the given file has |
785 content, even if the files do not exist on the filesystem or | 530 not yet been computed, or the most recently computed navigation |
786 if the file path represents the path to a directory on the | 531 information for the given file is out of date, then the response for |
787 filesystem. | 532 this request will be delayed until it has been computed. If the |
788 </p> | 533 content of the file changes after this request was received but before |
789 <params> | 534 a response could be sent, then an error of type |
790 <field name="files"> | 535 <tt>CONTENT_MODIFIED</tt> will be generated. |
791 <map> | 536 </p> |
792 <key><ref>FilePath</ref></key> | 537 <p> |
793 <value> | 538 If a navigation region overlaps (but extends either before or after) |
794 <union field="type"> | 539 the given region of the file it will be included in the result. This |
795 <ref>AddContentOverlay</ref> | 540 means that it is theoretically possible to get the same navigation |
796 <ref>ChangeContentOverlay</ref> | 541 region in response to multiple requests. Clients can avoid this by |
797 <ref>RemoveContentOverlay</ref> | 542 always choosing a region that starts at the beginning of a line and |
798 </union> | 543 ends at the end of a (possibly different) line in the file. |
799 </value> | 544 </p> |
800 </map> | 545 <p> |
801 <p> | 546 If a request is made for a file which does not exist, or |
802 A table mapping the files whose content has changed to a | 547 which is not currently subject to analysis (e.g. because it |
803 description of the content change. | 548 is not associated with any analysis root specified to |
804 </p> | 549 analysis.setAnalysisRoots), an error of type |
805 </field> | 550 <tt>GET_NAVIGATION_INVALID_FILE</tt> will be generated. |
806 </params> | 551 </p> |
807 <result> | 552 <params> |
808 </result> | 553 <field name="file"> |
809 </request> | 554 <ref>FilePath</ref> |
810 <request method="updateOptions" deprecated="true"> | 555 <p> |
811 <p><b>Deprecated:</b> all of the options can be set by users in | 556 The file in which navigation information is being requested. |
812 an analysis options file.</p> | 557 </p> |
813 <p> | 558 </field> |
814 Update the options controlling analysis based on the given | 559 <field name="offset"> |
815 set of options. Any options that are not included in the | 560 <ref>int</ref> |
816 analysis options will not be changed. If there are options | 561 <p> |
817 in the analysis options that are not valid, they will be | 562 The offset of the region for which navigation information is being |
818 silently ignored. | 563 requested. |
819 </p> | 564 </p> |
820 <params> | 565 </field> |
821 <field name="options"> | 566 <field name="length"> |
822 <ref>AnalysisOptions</ref> | 567 <ref>int</ref> |
823 <p> | 568 <p> |
824 The options that are to be used to control analysis. | 569 The length of the region for which navigation information is being |
825 </p> | 570 requested. |
826 </field> | 571 </p> |
827 </params> | 572 </field> |
828 </request> | 573 </params> |
829 <notification event="analyzedFiles"> | 574 <result> |
830 <p> | 575 <field name="files"> |
831 Reports the paths of the files that are being analyzed. | 576 <list> |
832 </p> | 577 <ref>FilePath</ref> |
833 <p> | 578 </list> |
834 This notification is not subscribed to by default. Clients can | 579 <p> |
835 subscribe by including the value <tt>"ANALYZED_FILES"</tt> in the list | 580 A list of the paths of files that are referenced by the navigation |
836 of services passed in an analysis.setGeneralSubscriptions request. | 581 targets. |
837 </p> | 582 </p> |
838 <params> | 583 </field> |
839 <field name="directories"> | 584 <field name="targets"> |
840 <list><ref>FilePath</ref></list> | 585 <list> |
841 <p> | 586 <ref>NavigationTarget</ref> |
842 A list of the paths of the files that are being analyzed. | 587 </list> |
843 </p> | 588 <p> |
844 </field> | 589 A list of the navigation targets that are referenced by the |
845 </params> | 590 navigation regions. |
846 </notification> | 591 </p> |
847 <notification event="errors"> | 592 </field> |
848 <p> | 593 <field name="regions"> |
849 Reports the errors associated with a given file. The set of | 594 <list> |
850 errors included in the notification is always a complete | 595 <ref>NavigationRegion</ref> |
851 list that supersedes any previously reported errors. | 596 </list> |
852 </p> | 597 <p> |
853 <params> | 598 A list of the navigation regions within the requested region of |
854 <field name="file"> | 599 the file. |
| 600 </p> |
| 601 </field> |
| 602 </result> |
| 603 </request> |
| 604 <request method="reanalyze"> |
| 605 <p> |
| 606 Force the re-analysis of everything contained in the specified |
| 607 analysis roots. This will cause all previously computed analysis |
| 608 results to be discarded and recomputed, and will cause all subscribed |
| 609 notifications to be re-sent. |
| 610 </p> |
| 611 <p> |
| 612 If no analysis roots are provided, then all current analysis roots |
| 613 will be re-analyzed. If an empty list of analysis roots is provided, |
| 614 then nothing will be re-analyzed. If the list contains one or more |
| 615 paths that are not currently analysis roots, then an error of type |
| 616 <tt>INVALID_ANALYSIS_ROOT</tt> will be generated. |
| 617 </p> |
| 618 <params> |
| 619 <field name="roots" optional="true"> |
| 620 <list> |
| 621 <ref>FilePath</ref> |
| 622 </list> |
| 623 <p> |
| 624 A list of the analysis roots that are to be re-analyzed. |
| 625 </p> |
| 626 </field> |
| 627 </params> |
| 628 </request> |
| 629 <request method="setAnalysisRoots"> |
| 630 <p> |
| 631 Sets the root paths used to determine which files to analyze. The set |
| 632 of files to be analyzed are all of the files in one of the root paths |
| 633 that are not either explicitly or implicitly excluded. A file is |
| 634 explicitly excluded if it is in one of the excluded paths. A file is |
| 635 implicitly excluded if it is in a subdirectory of one of the root |
| 636 paths where the name of the subdirectory starts with a period (that |
| 637 is, a hidden directory). |
| 638 </p> |
| 639 <p> |
| 640 Note that this request determines the set of requested |
| 641 analysis roots. The actual set of analysis roots at any |
| 642 given time is the intersection of this set with the set of |
| 643 files and directories actually present on the |
| 644 filesystem. When the filesystem changes, the actual set of |
| 645 analysis roots is automatically updated, but the set of |
| 646 requested analysis roots is unchanged. This means that if |
| 647 the client sets an analysis root before the root becomes |
| 648 visible to server in the filesystem, there is no error; once |
| 649 the server sees the root in the filesystem it will start |
| 650 analyzing it. Similarly, server will stop analyzing files |
| 651 that are removed from the file system but they will remain |
| 652 in the set of requested roots. |
| 653 </p> |
| 654 <p> |
| 655 If an included path represents a file, then server will look |
| 656 in the directory containing the file for a pubspec.yaml |
| 657 file. If none is found, then the parents of the directory |
| 658 will be searched until such a file is found or the root of |
| 659 the file system is reached. If such a file is found, it will |
| 660 be used to resolve package: URI’s within the file. |
| 661 </p> |
| 662 <params> |
| 663 <field name="included"> |
| 664 <list> |
| 665 <ref>FilePath</ref> |
| 666 </list> |
| 667 <p> |
| 668 A list of the files and directories that should be |
| 669 analyzed. |
| 670 </p> |
| 671 </field> |
| 672 <field name="excluded"> |
| 673 <list> |
| 674 <ref>FilePath</ref> |
| 675 </list> |
| 676 <p> |
| 677 A list of the files and directories within the |
| 678 included directories that should not be analyzed. |
| 679 </p> |
| 680 </field> |
| 681 <field name="packageRoots" optional="true"> |
| 682 <map> |
| 683 <key> |
855 <ref>FilePath</ref> | 684 <ref>FilePath</ref> |
856 <p> | 685 </key> |
857 The file containing the errors. | 686 <value> |
858 </p> | |
859 </field> | |
860 <field name="errors"> | |
861 <list><ref>AnalysisError</ref></list> | |
862 <p> | |
863 The errors contained in the file. | |
864 </p> | |
865 </field> | |
866 </params> | |
867 </notification> | |
868 <notification event="flushResults"> | |
869 <p> | |
870 Reports that any analysis results that were previously | |
871 associated with the given files should be considered to be | |
872 invalid because those files are no longer being analyzed, | |
873 either because the analysis root that contained it is no | |
874 longer being analyzed or because the file no longer exists. | |
875 </p> | |
876 <p> | |
877 If a file is included in this notification and at some later | |
878 time a notification with results for the file is received, | |
879 clients should assume that the file is once again being | |
880 analyzed and the information should be processed. | |
881 </p> | |
882 <p> | |
883 It is not possible to subscribe to or unsubscribe from this | |
884 notification. | |
885 </p> | |
886 <params> | |
887 <field name="files"> | |
888 <list><ref>FilePath</ref></list> | |
889 <p> | |
890 The files that are no longer being analyzed. | |
891 </p> | |
892 </field> | |
893 </params> | |
894 </notification> | |
895 <notification event="folding"> | |
896 <p> | |
897 Reports the folding regions associated with a given | |
898 file. Folding regions can be nested, but will not be | |
899 overlapping. Nesting occurs when a foldable element, such as | |
900 a method, is nested inside another foldable element such as | |
901 a class. | |
902 </p> | |
903 <p> | |
904 This notification is not subscribed to by default. Clients | |
905 can subscribe by including the value <tt>"FOLDING"</tt> in | |
906 the list of services passed in an analysis.setSubscriptions | |
907 request. | |
908 </p> | |
909 <params> | |
910 <field name="file"> | |
911 <ref>FilePath</ref> | 687 <ref>FilePath</ref> |
912 <p> | 688 </value> |
913 The file containing the folding regions. | 689 </map> |
914 </p> | 690 <p> |
915 </field> | 691 A mapping from source directories to package roots |
916 <field name="regions"> | 692 that should override the normal package: URI resolution |
917 <list><ref>FoldingRegion</ref></list> | 693 mechanism. |
918 <p> | 694 </p> |
919 The folding regions contained in the file. | 695 <p> |
920 </p> | 696 If a package root is a directory, then |
921 </field> | 697 the analyzer will behave as though the associated |
922 </params> | 698 source directory in the map contains a special |
923 </notification> | 699 pubspec.yaml file which resolves any package: URI to the |
924 <notification event="highlights"> | 700 corresponding path within that package root directory. The |
925 <p> | 701 effect is the same as specifying the package root directory as |
926 Reports the highlight regions associated with a given file. | 702 a "--package_root" parameter to the Dart VM when |
927 </p> | 703 executing any Dart file inside the source directory. |
928 <p> | 704 </p> |
929 This notification is not subscribed to by default. Clients | 705 <p> |
930 can subscribe by including the value <tt>"HIGHLIGHTS"</tt> | 706 If a package root is a file, then the analyzer |
931 in the list of services passed in an | 707 will behave as though that file is a ".packages" file in the |
932 analysis.setSubscriptions request. | 708 source directory. The effect is the same as specifying the file |
933 </p> | 709 as a "--packages" parameter to the Dart VM when |
934 <params> | 710 executing any Dart file inside the source directory. |
935 <field name="file"> | 711 </p> |
| 712 <p> |
| 713 Files in any directories that are not overridden by this |
| 714 mapping have their package: URI's resolved using the |
| 715 normal pubspec.yaml mechanism. If this field is absent, |
| 716 or the empty map is specified, that indicates that the |
| 717 normal pubspec.yaml mechanism should always be used. |
| 718 </p> |
| 719 </field> |
| 720 </params> |
| 721 </request> |
| 722 <request method="setGeneralSubscriptions"> |
| 723 <p> |
| 724 Subscribe for general services (that is, services that are not |
| 725 specific to individual files). All previous subscriptions are replaced |
| 726 by the given set of services. |
| 727 </p> |
| 728 <p> |
| 729 It is an error if any of the elements in the list are not valid |
| 730 services. If there is an error, then the current subscriptions will |
| 731 remain unchanged. |
| 732 </p> |
| 733 <params> |
| 734 <field name="subscriptions"> |
| 735 <list> |
| 736 <ref>GeneralAnalysisService</ref> |
| 737 </list> |
| 738 <p>A list of the services being subscribed to.</p> |
| 739 </field> |
| 740 </params> |
| 741 </request> |
| 742 <request method="setPriorityFiles"> |
| 743 <p> |
| 744 Set the priority files to the files in the given list. A |
| 745 priority file is a file that is given priority when |
| 746 scheduling which analysis work to do first. The list |
| 747 typically contains those files that are visible to the user |
| 748 and those for which analysis results will have the biggest |
| 749 impact on the user experience. The order of the files within |
| 750 the list is significant: the first file will be given higher |
| 751 priority than the second, the second higher priority than |
| 752 the third, and so on. |
| 753 </p> |
| 754 <p> |
| 755 Note that this request determines the set of requested |
| 756 priority files. The actual set of priority files is the |
| 757 intersection of the requested set of priority files with the |
| 758 set of files currently subject to analysis. (See |
| 759 analysis.setSubscriptions for a description of files that |
| 760 are subject to analysis.) |
| 761 </p> |
| 762 <p> |
| 763 If a requested priority file is a directory it is ignored, |
| 764 but remains in the set of requested priority files so that |
| 765 if it later becomes a file it can be included in the set of |
| 766 actual priority files. |
| 767 </p> |
| 768 <params> |
| 769 <field name="files"> |
| 770 <list> |
| 771 <ref>FilePath</ref> |
| 772 </list> |
| 773 <p> |
| 774 The files that are to be a priority for analysis. |
| 775 </p> |
| 776 </field> |
| 777 </params> |
| 778 </request> |
| 779 <request method="setSubscriptions"> |
| 780 <p> |
| 781 Subscribe for services that are specific to individual files. |
| 782 All previous subscriptions are replaced by the current set of |
| 783 subscriptions. If a given service is not included as a key in the map |
| 784 then no files will be subscribed to the service, exactly as if the |
| 785 service had been included in the map with an explicit empty list of |
| 786 files. |
| 787 </p> |
| 788 <p> |
| 789 Note that this request determines the set of requested |
| 790 subscriptions. The actual set of subscriptions at any given |
| 791 time is the intersection of this set with the set of files |
| 792 currently subject to analysis. The files currently subject |
| 793 to analysis are the set of files contained within an actual |
| 794 analysis root but not excluded, plus all of the files |
| 795 transitively reachable from those files via import, export |
| 796 and part directives. (See analysis.setAnalysisRoots for an |
| 797 explanation of how the actual analysis roots are |
| 798 determined.) When the actual analysis roots change, the |
| 799 actual set of subscriptions is automatically updated, but |
| 800 the set of requested subscriptions is unchanged. |
| 801 </p> |
| 802 <p> |
| 803 If a requested subscription is a directory it is ignored, |
| 804 but remains in the set of requested subscriptions so that if |
| 805 it later becomes a file it can be included in the set of |
| 806 actual subscriptions. |
| 807 </p> |
| 808 <p> |
| 809 It is an error if any of the keys in the map are not valid |
| 810 services. If there is an error, then the existing |
| 811 subscriptions will remain unchanged. |
| 812 </p> |
| 813 <params> |
| 814 <field name="subscriptions"> |
| 815 <map> |
| 816 <key> |
| 817 <ref>AnalysisService</ref> |
| 818 </key> |
| 819 <value> |
| 820 <list> |
| 821 <ref>FilePath</ref> |
| 822 </list> |
| 823 </value> |
| 824 </map> |
| 825 <p> |
| 826 A table mapping services to a list of the files being |
| 827 subscribed to the service. |
| 828 </p> |
| 829 </field> |
| 830 </params> |
| 831 </request> |
| 832 <request method="updateContent"> |
| 833 <p> |
| 834 Update the content of one or more files. Files that were |
| 835 previously updated but not included in this update remain |
| 836 unchanged. This effectively represents an overlay of the |
| 837 filesystem. The files whose content is overridden are |
| 838 therefore seen by server as being files with the given |
| 839 content, even if the files do not exist on the filesystem or |
| 840 if the file path represents the path to a directory on the |
| 841 filesystem. |
| 842 </p> |
| 843 <params> |
| 844 <field name="files"> |
| 845 <map> |
| 846 <key> |
936 <ref>FilePath</ref> | 847 <ref>FilePath</ref> |
937 <p> | 848 </key> |
938 The file containing the highlight regions. | 849 <value> |
939 </p> | 850 <union field="type"> |
940 </field> | 851 <ref>AddContentOverlay</ref> |
941 <field name="regions"> | 852 <ref>ChangeContentOverlay</ref> |
942 <list><ref>HighlightRegion</ref></list> | 853 <ref>RemoveContentOverlay</ref> |
943 <p> | 854 </union> |
944 The highlight regions contained in the file. Each | 855 </value> |
945 highlight region represents a particular syntactic or | 856 </map> |
946 semantic meaning associated with some range. Note that | 857 <p> |
947 the highlight regions that are returned can overlap | 858 A table mapping the files whose content has changed to a |
948 other highlight regions if there is more than one | 859 description of the content change. |
949 meaning associated with a particular region. | 860 </p> |
950 </p> | 861 </field> |
951 </field> | 862 </params> |
952 </params> | 863 <result> |
953 </notification> | 864 </result> |
954 <notification event="implemented"> | 865 </request> |
955 <p> | 866 <request method="updateOptions" deprecated="true"> |
956 Reports the classes that are implemented or extended and | 867 <p><b>Deprecated:</b> all of the options can be set by users in |
957 class members that are implemented or overridden in a file. | 868 an analysis options file.</p> |
958 </p> | 869 <p> |
959 <p> | 870 Update the options controlling analysis based on the given |
960 This notification is not subscribed to by default. Clients | 871 set of options. Any options that are not included in the |
961 can subscribe by including the value <tt>"IMPLEMENTED"</tt> in | 872 analysis options will not be changed. If there are options |
962 the list of services passed in an analysis.setSubscriptions | 873 in the analysis options that are not valid, they will be |
963 request. | 874 silently ignored. |
964 </p> | 875 </p> |
965 <params> | 876 <params> |
966 <field name="file"> | 877 <field name="options"> |
967 <ref>FilePath</ref> | 878 <ref>AnalysisOptions</ref> |
968 <p> | 879 <p> |
969 The file with which the implementations are associated. | 880 The options that are to be used to control analysis. |
970 </p> | 881 </p> |
971 </field> | 882 </field> |
972 <field name="classes"> | 883 </params> |
973 <list><ref>ImplementedClass</ref></list> | 884 </request> |
974 <p> | 885 <notification event="analyzedFiles"> |
975 The classes defined in the file that are implemented or extended. | 886 <p> |
976 </p> | 887 Reports the paths of the files that are being analyzed. |
977 </field> | 888 </p> |
978 <field name="members"> | 889 <p> |
979 <list><ref>ImplementedMember</ref></list> | 890 This notification is not subscribed to by default. Clients can |
980 <p> | 891 subscribe by including the value <tt>"ANALYZED_FILES"</tt> in the list |
981 The member defined in the file that are implemented or overridden. | 892 of services passed in an analysis.setGeneralSubscriptions request. |
982 </p> | 893 </p> |
983 </field> | 894 <params> |
984 </params> | 895 <field name="directories"> |
985 </notification> | 896 <list> |
986 <notification event="invalidate"> | 897 <ref>FilePath</ref> |
987 <p> | 898 </list> |
988 Reports that the navigation information associated with a region of a | 899 <p> |
989 single file has become invalid and should be re-requested. | 900 A list of the paths of the files that are being analyzed. |
990 </p> | 901 </p> |
991 <p> | 902 </field> |
992 This notification is not subscribed to by default. Clients can | 903 </params> |
993 subscribe by including the value <tt>"INVALIDATE"</tt> in the list of | 904 </notification> |
994 services passed in an analysis.setSubscriptions request. | 905 <notification event="errors"> |
995 </p> | 906 <p> |
996 <params> | 907 Reports the errors associated with a given file. The set of |
997 <field name="file"> | 908 errors included in the notification is always a complete |
998 <ref>FilePath</ref> | 909 list that supersedes any previously reported errors. |
999 <p> | 910 </p> |
1000 The file whose information has been invalidated. | 911 <params> |
1001 </p> | 912 <field name="file"> |
1002 </field> | 913 <ref>FilePath</ref> |
1003 <field name="offset"> | 914 <p> |
1004 <ref>int</ref> | 915 The file containing the errors. |
1005 <p> | 916 </p> |
1006 The offset of the invalidated region. | 917 </field> |
1007 </p> | 918 <field name="errors"> |
1008 </field> | 919 <list> |
1009 <field name="length"> | 920 <ref>AnalysisError</ref> |
1010 <ref>int</ref> | 921 </list> |
1011 <p> | 922 <p> |
1012 The length of the invalidated region. | 923 The errors contained in the file. |
1013 </p> | 924 </p> |
1014 </field> | 925 </field> |
1015 <field name="delta"> | 926 </params> |
1016 <ref>int</ref> | 927 </notification> |
1017 <p> | 928 <notification event="flushResults"> |
1018 The delta to be applied to the offsets in information that follows | 929 <p> |
1019 the invalidated region in order to update it so that it doesn't | 930 Reports that any analysis results that were previously |
1020 need to be re-requested. | 931 associated with the given files should be considered to be |
1021 </p> | 932 invalid because those files are no longer being analyzed, |
1022 </field> | 933 either because the analysis root that contained it is no |
1023 </params> | 934 longer being analyzed or because the file no longer exists. |
1024 </notification> | 935 </p> |
1025 <notification event="navigation"> | 936 <p> |
1026 <p> | 937 If a file is included in this notification and at some later |
1027 Reports the navigation targets associated with a given file. | 938 time a notification with results for the file is received, |
1028 </p> | 939 clients should assume that the file is once again being |
1029 <p> | 940 analyzed and the information should be processed. |
1030 This notification is not subscribed to by default. Clients | 941 </p> |
1031 can subscribe by including the value <tt>"NAVIGATION"</tt> | 942 <p> |
1032 in the list of services passed in an | 943 It is not possible to subscribe to or unsubscribe from this |
1033 analysis.setSubscriptions request. | 944 notification. |
1034 </p> | 945 </p> |
1035 <params> | 946 <params> |
1036 <field name="file"> | 947 <field name="files"> |
1037 <ref>FilePath</ref> | 948 <list> |
1038 <p> | 949 <ref>FilePath</ref> |
1039 The file containing the navigation regions. | 950 </list> |
1040 </p> | 951 <p> |
1041 </field> | 952 The files that are no longer being analyzed. |
1042 <field name="regions"> | 953 </p> |
1043 <list><ref>NavigationRegion</ref></list> | 954 </field> |
1044 <p> | 955 </params> |
1045 The navigation regions contained in the file. | 956 </notification> |
1046 The regions are sorted by their offsets. | 957 <notification event="folding"> |
1047 Each navigation region represents a list of targets | 958 <p> |
1048 associated with some range. The lists will usually | 959 Reports the folding regions associated with a given |
1049 contain a single target, but can contain more in the | 960 file. Folding regions can be nested, but will not be |
1050 case of a part that is included in multiple libraries | 961 overlapping. Nesting occurs when a foldable element, such as |
1051 or in Dart code that is compiled against multiple | 962 a method, is nested inside another foldable element such as |
1052 versions of a package. Note that the navigation | 963 a class. |
1053 regions that are returned do not overlap other | 964 </p> |
1054 navigation regions. | 965 <p> |
1055 </p> | 966 This notification is not subscribed to by default. Clients |
1056 </field> | 967 can subscribe by including the value <tt>"FOLDING"</tt> in |
1057 <field name="targets"> | 968 the list of services passed in an analysis.setSubscriptions |
1058 <list><ref>NavigationTarget</ref></list> | 969 request. |
1059 <p> | 970 </p> |
1060 The navigation targets referenced in the file. | 971 <params> |
1061 They are referenced by <tt>NavigationRegion</tt>s by their | 972 <field name="file"> |
1062 index in this array. | 973 <ref>FilePath</ref> |
1063 </p> | 974 <p> |
1064 </field> | 975 The file containing the folding regions. |
1065 <field name="files"> | 976 </p> |
1066 <list><ref>FilePath</ref></list> | 977 </field> |
1067 <p> | 978 <field name="regions"> |
1068 The files containing navigation targets referenced in the file. | 979 <list> |
1069 They are referenced by <tt>NavigationTarget</tt>s by their | 980 <ref>FoldingRegion</ref> |
1070 index in this array. | 981 </list> |
1071 </p> | 982 <p> |
1072 </field> | 983 The folding regions contained in the file. |
1073 </params> | 984 </p> |
1074 </notification> | 985 </field> |
1075 <notification event="occurrences"> | 986 </params> |
1076 <p> | 987 </notification> |
1077 Reports the occurrences of references to elements within a | 988 <notification event="highlights"> |
1078 single file. | 989 <p> |
1079 </p> | 990 Reports the highlight regions associated with a given file. |
1080 <p> | 991 </p> |
1081 This notification is not subscribed to by default. Clients | 992 <p> |
1082 can subscribe by including the value <tt>"OCCURRENCES"</tt> | 993 This notification is not subscribed to by default. Clients |
1083 in the list of services passed in an | 994 can subscribe by including the value <tt>"HIGHLIGHTS"</tt> |
1084 analysis.setSubscriptions request. | 995 in the list of services passed in an |
1085 </p> | 996 analysis.setSubscriptions request. |
1086 <params> | 997 </p> |
1087 <field name="file"> | 998 <params> |
1088 <ref>FilePath</ref> | 999 <field name="file"> |
1089 <p> | 1000 <ref>FilePath</ref> |
1090 The file in which the references occur. | 1001 <p> |
1091 </p> | 1002 The file containing the highlight regions. |
1092 </field> | 1003 </p> |
1093 <field name="occurrences"> | 1004 </field> |
1094 <list><ref>Occurrences</ref></list> | 1005 <field name="regions"> |
1095 <p> | 1006 <list> |
1096 The occurrences of references to elements within the | 1007 <ref>HighlightRegion</ref> |
1097 file. | 1008 </list> |
1098 </p> | 1009 <p> |
1099 </field> | 1010 The highlight regions contained in the file. Each |
1100 </params> | 1011 highlight region represents a particular syntactic or |
1101 </notification> | 1012 semantic meaning associated with some range. Note that |
1102 <notification event="outline"> | 1013 the highlight regions that are returned can overlap |
1103 <p> | 1014 other highlight regions if there is more than one |
1104 Reports the outline associated with a single file. | 1015 meaning associated with a particular region. |
1105 </p> | 1016 </p> |
1106 <p> | 1017 </field> |
1107 This notification is not subscribed to by default. Clients | 1018 </params> |
1108 can subscribe by including the value <tt>"OUTLINE"</tt> in | 1019 </notification> |
1109 the list of services passed in an analysis.setSubscriptions | 1020 <notification event="implemented"> |
1110 request. | 1021 <p> |
1111 </p> | 1022 Reports the classes that are implemented or extended and |
1112 <params> | 1023 class members that are implemented or overridden in a file. |
1113 <field name="file"> | 1024 </p> |
1114 <ref>FilePath</ref> | 1025 <p> |
1115 <p> | 1026 This notification is not subscribed to by default. Clients |
1116 The file with which the outline is associated. | 1027 can subscribe by including the value <tt>"IMPLEMENTED"</tt> in |
1117 </p> | 1028 the list of services passed in an analysis.setSubscriptions |
1118 </field> | 1029 request. |
1119 <field name="kind"> | 1030 </p> |
1120 <ref>FileKind</ref> | 1031 <params> |
1121 <p> | 1032 <field name="file"> |
1122 The kind of the file. | 1033 <ref>FilePath</ref> |
1123 </p> | 1034 <p> |
1124 </field> | 1035 The file with which the implementations are associated. |
1125 <field name="libraryName" optional="true"> | 1036 </p> |
1126 <ref>String</ref> | 1037 </field> |
1127 <p> | 1038 <field name="classes"> |
1128 The name of the library defined by the file using a "library" | 1039 <list> |
1129 directive, or referenced by a "part of" directive. If both | 1040 <ref>ImplementedClass</ref> |
1130 "library" and "part of" directives are present, then the | 1041 </list> |
1131 "library" directive takes precedence. | 1042 <p> |
1132 This field will be omitted if the file has neither "library" | 1043 The classes defined in the file that are implemented or extended. |
1133 nor "part of" directives. | 1044 </p> |
1134 </p> | 1045 </field> |
1135 </field> | 1046 <field name="members"> |
1136 <field name="outline"> | 1047 <list> |
1137 <ref>Outline</ref> | 1048 <ref>ImplementedMember</ref> |
1138 <p> | 1049 </list> |
1139 The outline associated with the file. | 1050 <p> |
1140 </p> | 1051 The member defined in the file that are implemented or overridden. |
1141 </field> | 1052 </p> |
1142 </params> | 1053 </field> |
1143 </notification> | 1054 </params> |
1144 <notification event="overrides"> | 1055 </notification> |
1145 <p> | 1056 <notification event="invalidate"> |
1146 Reports the overriding members in a file. | 1057 <p> |
1147 </p> | 1058 Reports that the navigation information associated with a region of a |
1148 <p> | 1059 single file has become invalid and should be re-requested. |
1149 This notification is not subscribed to by default. Clients | 1060 </p> |
1150 can subscribe by including the value <tt>"OVERRIDES"</tt> in | 1061 <p> |
1151 the list of services passed in an analysis.setSubscriptions | 1062 This notification is not subscribed to by default. Clients can |
1152 request. | 1063 subscribe by including the value <tt>"INVALIDATE"</tt> in the list of |
1153 </p> | 1064 services passed in an analysis.setSubscriptions request. |
1154 <params> | 1065 </p> |
1155 <field name="file"> | 1066 <params> |
1156 <ref>FilePath</ref> | 1067 <field name="file"> |
1157 <p> | 1068 <ref>FilePath</ref> |
1158 The file with which the overrides are associated. | 1069 <p> |
1159 </p> | 1070 The file whose information has been invalidated. |
1160 </field> | 1071 </p> |
1161 <field name="overrides"> | 1072 </field> |
1162 <list><ref>Override</ref></list> | 1073 <field name="offset"> |
1163 <p> | 1074 <ref>int</ref> |
1164 The overrides associated with the file. | 1075 <p> |
1165 </p> | 1076 The offset of the invalidated region. |
1166 </field> | 1077 </p> |
1167 </params> | 1078 </field> |
1168 </notification> | 1079 <field name="length"> |
1169 </domain> | 1080 <ref>int</ref> |
1170 <domain name="completion"> | 1081 <p> |
1171 <p> | 1082 The length of the invalidated region. |
1172 The code completion domain contains commands related to | 1083 </p> |
1173 getting code completion suggestions. | 1084 </field> |
1174 </p> | 1085 <field name="delta"> |
1175 <request method="getSuggestions"> | 1086 <ref>int</ref> |
1176 <p> | 1087 <p> |
1177 Request that completion suggestions for the given offset in | 1088 The delta to be applied to the offsets in information that follows |
1178 the given file be returned. | 1089 the invalidated region in order to update it so that it doesn't |
1179 </p> | 1090 need to be re-requested. |
1180 <params> | 1091 </p> |
1181 <field name="file"> | 1092 </field> |
1182 <ref>FilePath</ref> | 1093 </params> |
1183 <p> | 1094 </notification> |
1184 The file containing the point at which suggestions are | 1095 <notification event="navigation"> |
1185 to be made. | 1096 <p> |
1186 </p> | 1097 Reports the navigation targets associated with a given file. |
1187 </field> | 1098 </p> |
1188 <field name="offset"> | 1099 <p> |
1189 <ref>int</ref> | 1100 This notification is not subscribed to by default. Clients |
1190 <p> | 1101 can subscribe by including the value <tt>"NAVIGATION"</tt> |
1191 The offset within the file at which suggestions are to | 1102 in the list of services passed in an |
1192 be made. | 1103 analysis.setSubscriptions request. |
1193 </p> | 1104 </p> |
1194 </field> | 1105 <params> |
1195 </params> | 1106 <field name="file"> |
1196 <result> | 1107 <ref>FilePath</ref> |
1197 <field name="id"> | 1108 <p> |
1198 <ref>CompletionId</ref> | 1109 The file containing the navigation regions. |
1199 <p> | 1110 </p> |
1200 The identifier used to associate results with this | 1111 </field> |
1201 completion request. | 1112 <field name="regions"> |
1202 </p> | 1113 <list> |
1203 </field> | 1114 <ref>NavigationRegion</ref> |
1204 </result> | 1115 </list> |
1205 </request> | 1116 <p> |
1206 <notification event="results"> | 1117 The navigation regions contained in the file. |
1207 <p> | 1118 The regions are sorted by their offsets. |
1208 Reports the completion suggestions that should be presented | 1119 Each navigation region represents a list of targets |
1209 to the user. The set of suggestions included in the | 1120 associated with some range. The lists will usually |
1210 notification is always a complete list that supersedes any | 1121 contain a single target, but can contain more in the |
1211 previously reported suggestions. | 1122 case of a part that is included in multiple libraries |
1212 </p> | 1123 or in Dart code that is compiled against multiple |
1213 <params> | 1124 versions of a package. Note that the navigation |
1214 <field name="id"> | 1125 regions that are returned do not overlap other |
1215 <ref>CompletionId</ref> | 1126 navigation regions. |
1216 <p> | 1127 </p> |
1217 The id associated with the completion. | 1128 </field> |
1218 </p> | 1129 <field name="targets"> |
1219 </field> | 1130 <list> |
1220 <field name="replacementOffset"> | 1131 <ref>NavigationTarget</ref> |
1221 <ref>int</ref> | 1132 </list> |
1222 <p> | 1133 <p> |
1223 The offset of the start of the text to be | 1134 The navigation targets referenced in the file. |
1224 replaced. This will be different than the offset used | 1135 They are referenced by <tt>NavigationRegion</tt>s by their |
1225 to request the completion suggestions if there was a | 1136 index in this array. |
1226 portion of an identifier before the original | 1137 </p> |
1227 offset. In particular, the replacementOffset will be | 1138 </field> |
1228 the offset of the beginning of said identifier. | 1139 <field name="files"> |
1229 </p> | 1140 <list> |
1230 </field> | 1141 <ref>FilePath</ref> |
1231 <field name="replacementLength"> | 1142 </list> |
1232 <ref>int</ref> | 1143 <p> |
1233 <p> | 1144 The files containing navigation targets referenced in the file. |
1234 The length of the text to be replaced if the remainder | 1145 They are referenced by <tt>NavigationTarget</tt>s by their |
1235 of the identifier containing the cursor is to be | 1146 index in this array. |
1236 replaced when the suggestion is applied (that is, the | 1147 </p> |
1237 number of characters in the existing identifier). | 1148 </field> |
1238 </p> | 1149 </params> |
1239 </field> | 1150 </notification> |
1240 <field name="results"> | 1151 <notification event="occurrences"> |
1241 <list><ref>CompletionSuggestion</ref></list> | 1152 <p> |
1242 <p> | 1153 Reports the occurrences of references to elements within a |
1243 The completion suggestions being reported. The | 1154 single file. |
1244 notification contains all possible completions at the | 1155 </p> |
1245 requested cursor position, even those that do not match | 1156 <p> |
1246 the characters the user has already typed. This allows | 1157 This notification is not subscribed to by default. Clients |
1247 the client to respond to further keystrokes from the | 1158 can subscribe by including the value <tt>"OCCURRENCES"</tt> |
1248 user without having to make additional requests. | 1159 in the list of services passed in an |
1249 </p> | 1160 analysis.setSubscriptions request. |
1250 </field> | 1161 </p> |
1251 <field name="isLast"> | 1162 <params> |
1252 <ref>bool</ref> | 1163 <field name="file"> |
1253 <p> | 1164 <ref>FilePath</ref> |
1254 True if this is that last set of results that will be | 1165 <p> |
1255 returned for the indicated completion. | 1166 The file in which the references occur. |
1256 </p> | 1167 </p> |
1257 </field> | 1168 </field> |
1258 </params> | 1169 <field name="occurrences"> |
1259 </notification> | 1170 <list> |
1260 </domain> | 1171 <ref>Occurrences</ref> |
1261 <domain name="search"> | 1172 </list> |
1262 <p> | 1173 <p> |
1263 The search domain contains commands related to searches that | 1174 The occurrences of references to elements within the |
1264 can be performed against the code base. | 1175 file. |
1265 </p> | 1176 </p> |
1266 <request method="findElementReferences"> | 1177 </field> |
1267 <p> | 1178 </params> |
1268 Perform a search for references to the element defined or | 1179 </notification> |
1269 referenced at the given offset in the given file. | 1180 <notification event="outline"> |
1270 </p> | 1181 <p> |
1271 <p> | 1182 Reports the outline associated with a single file. |
1272 An identifier is returned immediately, and individual | 1183 </p> |
1273 results will be returned via the search.results notification | 1184 <p> |
1274 as they become available. | 1185 This notification is not subscribed to by default. Clients |
1275 </p> | 1186 can subscribe by including the value <tt>"OUTLINE"</tt> in |
1276 <params> | 1187 the list of services passed in an analysis.setSubscriptions |
1277 <field name="file"> | 1188 request. |
1278 <ref>FilePath</ref> | 1189 </p> |
1279 <p> | 1190 <params> |
1280 The file containing the declaration of or reference to | 1191 <field name="file"> |
1281 the element used to define the search. | 1192 <ref>FilePath</ref> |
1282 </p> | 1193 <p> |
1283 </field> | 1194 The file with which the outline is associated. |
1284 <field name="offset"> | 1195 </p> |
1285 <ref>int</ref> | 1196 </field> |
1286 <p> | 1197 <field name="kind"> |
1287 The offset within the file of the declaration of or | 1198 <ref>FileKind</ref> |
1288 reference to the element. | 1199 <p> |
1289 </p> | 1200 The kind of the file. |
1290 </field> | 1201 </p> |
1291 <field name="includePotential"> | 1202 </field> |
1292 <ref>bool</ref> | 1203 <field name="libraryName" optional="true"> |
1293 <p> | 1204 <ref>String</ref> |
1294 True if potential matches are to be included in the | 1205 <p> |
1295 results. | 1206 The name of the library defined by the file using a "library" |
1296 </p> | 1207 directive, or referenced by a "part of" directive. If both |
1297 </field> | 1208 "library" and "part of" directives are present, then the |
1298 </params> | 1209 "library" directive takes precedence. |
1299 <result> | 1210 This field will be omitted if the file has neither "library" |
1300 <field name="id" optional="true"> | 1211 nor "part of" directives. |
1301 <ref>SearchId</ref> | 1212 </p> |
1302 <p> | 1213 </field> |
1303 The identifier used to associate results with this | 1214 <field name="outline"> |
1304 search request. | 1215 <ref>Outline</ref> |
1305 </p> | 1216 <p> |
1306 <p> | 1217 The outline associated with the file. |
1307 If no element was found at the given location, this | 1218 </p> |
1308 field will be absent, and no results will be reported | 1219 </field> |
1309 via the search.results notification. | 1220 </params> |
1310 </p> | 1221 </notification> |
1311 </field> | 1222 <notification event="overrides"> |
1312 <field name="element" optional="true"> | 1223 <p> |
1313 <ref>Element</ref> | 1224 Reports the overriding members in a file. |
1314 <p> | 1225 </p> |
1315 The element referenced or defined at the given offset | 1226 <p> |
1316 and whose references will be returned in the search | 1227 This notification is not subscribed to by default. Clients |
1317 results. | 1228 can subscribe by including the value <tt>"OVERRIDES"</tt> in |
1318 </p> | 1229 the list of services passed in an analysis.setSubscriptions |
1319 <p> | 1230 request. |
1320 If no element was found at the given location, this | 1231 </p> |
1321 field will be absent. | 1232 <params> |
1322 </p> | 1233 <field name="file"> |
1323 </field> | 1234 <ref>FilePath</ref> |
1324 </result> | 1235 <p> |
1325 </request> | 1236 The file with which the overrides are associated. |
1326 <request method="findMemberDeclarations"> | 1237 </p> |
1327 <p> | 1238 </field> |
1328 Perform a search for declarations of members whose name is | 1239 <field name="overrides"> |
1329 equal to the given name. | 1240 <list> |
1330 </p> | 1241 <ref>Override</ref> |
1331 <p> | 1242 </list> |
1332 An identifier is returned immediately, and individual | 1243 <p> |
1333 results will be returned via the search.results notification | 1244 The overrides associated with the file. |
1334 as they become available. | 1245 </p> |
1335 </p> | 1246 </field> |
1336 <params> | 1247 </params> |
1337 <field name="name"> | 1248 </notification> |
1338 <ref>String</ref> | 1249 </domain> |
1339 <p> | 1250 <domain name="completion"> |
1340 The name of the declarations to be found. | 1251 <p> |
1341 </p> | 1252 The code completion domain contains commands related to |
1342 </field> | 1253 getting code completion suggestions. |
1343 </params> | 1254 </p> |
1344 <result> | 1255 <request method="getSuggestions"> |
1345 <field name="id"> | 1256 <p> |
1346 <ref>SearchId</ref> | 1257 Request that completion suggestions for the given offset in |
1347 <p> | 1258 the given file be returned. |
1348 The identifier used to associate results with this | 1259 </p> |
1349 search request. | 1260 <params> |
1350 </p> | 1261 <field name="file"> |
1351 </field> | 1262 <ref>FilePath</ref> |
1352 </result> | 1263 <p> |
1353 </request> | 1264 The file containing the point at which suggestions are |
1354 <request method="findMemberReferences"> | 1265 to be made. |
1355 <p> | 1266 </p> |
1356 Perform a search for references to members whose name is | 1267 </field> |
1357 equal to the given name. This search does not check to see | 1268 <field name="offset"> |
1358 that there is a member defined with the given name, so it is | 1269 <ref>int</ref> |
1359 able to find references to undefined members as well. | 1270 <p> |
1360 </p> | 1271 The offset within the file at which suggestions are to |
1361 <p> | 1272 be made. |
1362 An identifier is returned immediately, and individual | 1273 </p> |
1363 results will be returned via the search.results notification | 1274 </field> |
1364 as they become available. | 1275 </params> |
1365 </p> | 1276 <result> |
1366 <params> | 1277 <field name="id"> |
1367 <field name="name"> | 1278 <ref>CompletionId</ref> |
1368 <ref>String</ref> | 1279 <p> |
1369 <p> | 1280 The identifier used to associate results with this |
1370 The name of the references to be found. | 1281 completion request. |
1371 </p> | 1282 </p> |
1372 </field> | 1283 </field> |
1373 </params> | 1284 </result> |
1374 <result> | 1285 </request> |
1375 <field name="id"> | 1286 <notification event="results"> |
1376 <ref>SearchId</ref> | 1287 <p> |
1377 <p> | 1288 Reports the completion suggestions that should be presented |
1378 The identifier used to associate results with this | 1289 to the user. The set of suggestions included in the |
1379 search request. | 1290 notification is always a complete list that supersedes any |
1380 </p> | 1291 previously reported suggestions. |
1381 </field> | 1292 </p> |
1382 </result> | 1293 <params> |
1383 </request> | 1294 <field name="id"> |
1384 <request method="findTopLevelDeclarations"> | 1295 <ref>CompletionId</ref> |
1385 <p> | 1296 <p> |
1386 Perform a search for declarations of top-level elements | 1297 The id associated with the completion. |
1387 (classes, typedefs, getters, setters, functions and fields) | 1298 </p> |
1388 whose name matches the given pattern. | 1299 </field> |
1389 </p> | 1300 <field name="replacementOffset"> |
1390 <p> | 1301 <ref>int</ref> |
1391 An identifier is returned immediately, and individual | 1302 <p> |
1392 results will be returned via the search.results notification | 1303 The offset of the start of the text to be |
1393 as they become available. | 1304 replaced. This will be different than the offset used |
1394 </p> | 1305 to request the completion suggestions if there was a |
1395 <params> | 1306 portion of an identifier before the original |
1396 <field name="pattern"> | 1307 offset. In particular, the replacementOffset will be |
1397 <ref>String</ref> | 1308 the offset of the beginning of said identifier. |
1398 <p> | 1309 </p> |
1399 The regular expression used to match the names of the | 1310 </field> |
1400 declarations to be found. | 1311 <field name="replacementLength"> |
1401 </p> | 1312 <ref>int</ref> |
1402 </field> | 1313 <p> |
1403 </params> | 1314 The length of the text to be replaced if the remainder |
1404 <result> | 1315 of the identifier containing the cursor is to be |
1405 <field name="id"> | 1316 replaced when the suggestion is applied (that is, the |
1406 <ref>SearchId</ref> | 1317 number of characters in the existing identifier). |
1407 <p> | 1318 </p> |
1408 The identifier used to associate results with this | 1319 </field> |
1409 search request. | 1320 <field name="results"> |
1410 </p> | 1321 <list> |
1411 </field> | 1322 <ref>CompletionSuggestion</ref> |
1412 </result> | 1323 </list> |
1413 </request> | 1324 <p> |
1414 <request method="getTypeHierarchy"> | 1325 The completion suggestions being reported. The |
1415 <p> | 1326 notification contains all possible completions at the |
1416 Return the type hierarchy of the class declared or | 1327 requested cursor position, even those that do not match |
1417 referenced at the given location. | 1328 the characters the user has already typed. This allows |
1418 </p> | 1329 the client to respond to further keystrokes from the |
1419 <params> | 1330 user without having to make additional requests. |
1420 <field name="file"> | 1331 </p> |
1421 <ref>FilePath</ref> | 1332 </field> |
1422 <p> | 1333 <field name="isLast"> |
1423 The file containing the declaration or reference to the | 1334 <ref>bool</ref> |
1424 type for which a hierarchy is being requested. | 1335 <p> |
1425 </p> | 1336 True if this is that last set of results that will be |
1426 </field> | 1337 returned for the indicated completion. |
1427 <field name="offset"> | 1338 </p> |
1428 <ref>int</ref> | 1339 </field> |
1429 <p> | 1340 </params> |
1430 The offset of the name of the type within the file. | 1341 </notification> |
1431 </p> | 1342 </domain> |
1432 </field> | 1343 <domain name="search"> |
1433 <field name="superOnly" optional="true"> | 1344 <p> |
1434 <ref>bool</ref> | 1345 The search domain contains commands related to searches that |
1435 <p> | 1346 can be performed against the code base. |
1436 True if the client is only requesting superclasses and | 1347 </p> |
1437 interfaces hierarchy. | 1348 <request method="findElementReferences"> |
1438 </p> | 1349 <p> |
1439 </field> | 1350 Perform a search for references to the element defined or |
1440 </params> | 1351 referenced at the given offset in the given file. |
1441 <result> | 1352 </p> |
1442 <field name="hierarchyItems" optional="true"> | 1353 <p> |
1443 <list><ref>TypeHierarchyItem</ref></list> | 1354 An identifier is returned immediately, and individual |
1444 <p> | 1355 results will be returned via the search.results notification |
1445 A list of the types in the requested hierarchy. The | 1356 as they become available. |
1446 first element of the list is the item representing the | 1357 </p> |
1447 type for which the hierarchy was requested. The index of | 1358 <params> |
1448 other elements of the list is unspecified, but | 1359 <field name="file"> |
1449 correspond to the integers used to reference supertype | 1360 <ref>FilePath</ref> |
1450 and subtype items within the items. | 1361 <p> |
1451 </p> | 1362 The file containing the declaration of or reference to |
1452 <p> | 1363 the element used to define the search. |
1453 This field will be absent if the code at the given file | 1364 </p> |
1454 and offset does not represent a type, or if the file has | 1365 </field> |
1455 not been sufficiently analyzed to allow a type hierarchy | 1366 <field name="offset"> |
1456 to be produced. | 1367 <ref>int</ref> |
1457 </p> | 1368 <p> |
1458 </field> | 1369 The offset within the file of the declaration of or |
1459 </result> | 1370 reference to the element. |
1460 </request> | 1371 </p> |
1461 <notification event="results"> | 1372 </field> |
1462 <p> | 1373 <field name="includePotential"> |
1463 Reports some or all of the results of performing a requested | 1374 <ref>bool</ref> |
1464 search. Unlike other notifications, this notification | 1375 <p> |
1465 contains search results that should be added to any | 1376 True if potential matches are to be included in the |
1466 previously received search results associated with the same | 1377 results. |
1467 search id. | 1378 </p> |
1468 </p> | 1379 </field> |
1469 <params> | 1380 </params> |
1470 <field name="id"> | 1381 <result> |
1471 <ref>SearchId</ref> | 1382 <field name="id" optional="true"> |
1472 <p> | 1383 <ref>SearchId</ref> |
1473 The id associated with the search. | 1384 <p> |
1474 </p> | 1385 The identifier used to associate results with this |
1475 </field> | 1386 search request. |
1476 <field name="results"> | 1387 </p> |
1477 <list><ref>SearchResult</ref></list> | 1388 <p> |
1478 <p> | 1389 If no element was found at the given location, this |
1479 The search results being reported. | 1390 field will be absent, and no results will be reported |
1480 </p> | 1391 via the search.results notification. |
1481 </field> | 1392 </p> |
1482 <field name="isLast"> | 1393 </field> |
1483 <ref>bool</ref> | 1394 <field name="element" optional="true"> |
1484 <p> | 1395 <ref>Element</ref> |
1485 True if this is that last set of results that will be | 1396 <p> |
1486 returned for the indicated search. | 1397 The element referenced or defined at the given offset |
1487 </p> | 1398 and whose references will be returned in the search |
1488 </field> | 1399 results. |
1489 </params> | 1400 </p> |
1490 </notification> | 1401 <p> |
1491 </domain> | 1402 If no element was found at the given location, this |
1492 <domain name="edit"> | 1403 field will be absent. |
1493 <p> | 1404 </p> |
1494 The edit domain contains commands related to edits that can be | 1405 </field> |
1495 applied to the code. | 1406 </result> |
1496 </p> | 1407 </request> |
1497 <request method="format"> | 1408 <request method="findMemberDeclarations"> |
1498 <p> | 1409 <p> |
1499 Format the contents of a single file. The currently selected region of | 1410 Perform a search for declarations of members whose name is |
1500 text is passed in so that the selection can be preserved across the | 1411 equal to the given name. |
1501 formatting operation. The updated selection will be as close to | 1412 </p> |
1502 matching the original as possible, but whitespace at the beginning or | 1413 <p> |
1503 end of the selected region will be ignored. If preserving selection | 1414 An identifier is returned immediately, and individual |
1504 information is not required, zero (0) can be specified for both the | 1415 results will be returned via the search.results notification |
1505 selection offset and selection length. | 1416 as they become available. |
1506 </p> | 1417 </p> |
1507 <p> | 1418 <params> |
1508 If a request is made for a file which does not exist, or which is not | 1419 <field name="name"> |
1509 currently subject to analysis (e.g. because it is not associated with | 1420 <ref>String</ref> |
1510 any analysis root specified to analysis.setAnalysisRoots), an error of | 1421 <p> |
1511 type <tt>FORMAT_INVALID_FILE</tt> will be generated. If the source | 1422 The name of the declarations to be found. |
1512 contains syntax errors, an error of type <tt>FORMAT_WITH_ERRORS</tt> | 1423 </p> |
1513 will be generated. | 1424 </field> |
1514 </p> | 1425 </params> |
1515 <params> | 1426 <result> |
1516 <field name="file"> | 1427 <field name="id"> |
1517 <ref>FilePath</ref> | 1428 <ref>SearchId</ref> |
1518 <p> | 1429 <p> |
1519 The file containing the code to be formatted. | 1430 The identifier used to associate results with this |
1520 </p> | 1431 search request. |
1521 </field> | 1432 </p> |
1522 <field name="selectionOffset"> | 1433 </field> |
1523 <ref>int</ref> | 1434 </result> |
1524 <p> | 1435 </request> |
1525 The offset of the current selection in the file. | 1436 <request method="findMemberReferences"> |
1526 </p> | 1437 <p> |
1527 </field> | 1438 Perform a search for references to members whose name is |
1528 <field name="selectionLength"> | 1439 equal to the given name. This search does not check to see |
1529 <ref>int</ref> | 1440 that there is a member defined with the given name, so it is |
1530 <p> | 1441 able to find references to undefined members as well. |
1531 The length of the current selection in the file. | 1442 </p> |
1532 </p> | 1443 <p> |
1533 </field> | 1444 An identifier is returned immediately, and individual |
1534 <!-- | 1445 results will be returned via the search.results notification |
| 1446 as they become available. |
| 1447 </p> |
| 1448 <params> |
| 1449 <field name="name"> |
| 1450 <ref>String</ref> |
| 1451 <p> |
| 1452 The name of the references to be found. |
| 1453 </p> |
| 1454 </field> |
| 1455 </params> |
| 1456 <result> |
| 1457 <field name="id"> |
| 1458 <ref>SearchId</ref> |
| 1459 <p> |
| 1460 The identifier used to associate results with this |
| 1461 search request. |
| 1462 </p> |
| 1463 </field> |
| 1464 </result> |
| 1465 </request> |
| 1466 <request method="findTopLevelDeclarations"> |
| 1467 <p> |
| 1468 Perform a search for declarations of top-level elements |
| 1469 (classes, typedefs, getters, setters, functions and fields) |
| 1470 whose name matches the given pattern. |
| 1471 </p> |
| 1472 <p> |
| 1473 An identifier is returned immediately, and individual |
| 1474 results will be returned via the search.results notification |
| 1475 as they become available. |
| 1476 </p> |
| 1477 <params> |
| 1478 <field name="pattern"> |
| 1479 <ref>String</ref> |
| 1480 <p> |
| 1481 The regular expression used to match the names of the |
| 1482 declarations to be found. |
| 1483 </p> |
| 1484 </field> |
| 1485 </params> |
| 1486 <result> |
| 1487 <field name="id"> |
| 1488 <ref>SearchId</ref> |
| 1489 <p> |
| 1490 The identifier used to associate results with this |
| 1491 search request. |
| 1492 </p> |
| 1493 </field> |
| 1494 </result> |
| 1495 </request> |
| 1496 <request method="getTypeHierarchy"> |
| 1497 <p> |
| 1498 Return the type hierarchy of the class declared or |
| 1499 referenced at the given location. |
| 1500 </p> |
| 1501 <params> |
| 1502 <field name="file"> |
| 1503 <ref>FilePath</ref> |
| 1504 <p> |
| 1505 The file containing the declaration or reference to the |
| 1506 type for which a hierarchy is being requested. |
| 1507 </p> |
| 1508 </field> |
| 1509 <field name="offset"> |
| 1510 <ref>int</ref> |
| 1511 <p> |
| 1512 The offset of the name of the type within the file. |
| 1513 </p> |
| 1514 </field> |
| 1515 <field name="superOnly" optional="true"> |
| 1516 <ref>bool</ref> |
| 1517 <p> |
| 1518 True if the client is only requesting superclasses and |
| 1519 interfaces hierarchy. |
| 1520 </p> |
| 1521 </field> |
| 1522 </params> |
| 1523 <result> |
| 1524 <field name="hierarchyItems" optional="true"> |
| 1525 <list> |
| 1526 <ref>TypeHierarchyItem</ref> |
| 1527 </list> |
| 1528 <p> |
| 1529 A list of the types in the requested hierarchy. The |
| 1530 first element of the list is the item representing the |
| 1531 type for which the hierarchy was requested. The index of |
| 1532 other elements of the list is unspecified, but |
| 1533 correspond to the integers used to reference supertype |
| 1534 and subtype items within the items. |
| 1535 </p> |
| 1536 <p> |
| 1537 This field will be absent if the code at the given file |
| 1538 and offset does not represent a type, or if the file has |
| 1539 not been sufficiently analyzed to allow a type hierarchy |
| 1540 to be produced. |
| 1541 </p> |
| 1542 </field> |
| 1543 </result> |
| 1544 </request> |
| 1545 <notification event="results"> |
| 1546 <p> |
| 1547 Reports some or all of the results of performing a requested |
| 1548 search. Unlike other notifications, this notification |
| 1549 contains search results that should be added to any |
| 1550 previously received search results associated with the same |
| 1551 search id. |
| 1552 </p> |
| 1553 <params> |
| 1554 <field name="id"> |
| 1555 <ref>SearchId</ref> |
| 1556 <p> |
| 1557 The id associated with the search. |
| 1558 </p> |
| 1559 </field> |
| 1560 <field name="results"> |
| 1561 <list> |
| 1562 <ref>SearchResult</ref> |
| 1563 </list> |
| 1564 <p> |
| 1565 The search results being reported. |
| 1566 </p> |
| 1567 </field> |
| 1568 <field name="isLast"> |
| 1569 <ref>bool</ref> |
| 1570 <p> |
| 1571 True if this is that last set of results that will be |
| 1572 returned for the indicated search. |
| 1573 </p> |
| 1574 </field> |
| 1575 </params> |
| 1576 </notification> |
| 1577 </domain> |
| 1578 <domain name="edit"> |
| 1579 <p> |
| 1580 The edit domain contains commands related to edits that can be |
| 1581 applied to the code. |
| 1582 </p> |
| 1583 <request method="format"> |
| 1584 <p> |
| 1585 Format the contents of a single file. The currently selected region of |
| 1586 text is passed in so that the selection can be preserved across the |
| 1587 formatting operation. The updated selection will be as close to |
| 1588 matching the original as possible, but whitespace at the beginning or |
| 1589 end of the selected region will be ignored. If preserving selection |
| 1590 information is not required, zero (0) can be specified for both the |
| 1591 selection offset and selection length. |
| 1592 </p> |
| 1593 <p> |
| 1594 If a request is made for a file which does not exist, or which is not |
| 1595 currently subject to analysis (e.g. because it is not associated with |
| 1596 any analysis root specified to analysis.setAnalysisRoots), an error of |
| 1597 type <tt>FORMAT_INVALID_FILE</tt> will be generated. If the source |
| 1598 contains syntax errors, an error of type <tt>FORMAT_WITH_ERRORS</tt> |
| 1599 will be generated. |
| 1600 </p> |
| 1601 <params> |
| 1602 <field name="file"> |
| 1603 <ref>FilePath</ref> |
| 1604 <p> |
| 1605 The file containing the code to be formatted. |
| 1606 </p> |
| 1607 </field> |
| 1608 <field name="selectionOffset"> |
| 1609 <ref>int</ref> |
| 1610 <p> |
| 1611 The offset of the current selection in the file. |
| 1612 </p> |
| 1613 </field> |
| 1614 <field name="selectionLength"> |
| 1615 <ref>int</ref> |
| 1616 <p> |
| 1617 The length of the current selection in the file. |
| 1618 </p> |
| 1619 </field> |
| 1620 <!-- |
1535 <field name="selectionOnly" optional="true"> | 1621 <field name="selectionOnly" optional="true"> |
1536 <ref>bool</ref> | 1622 <ref>bool</ref> |
1537 <p> | 1623 <p> |
1538 True if the code to be formatted should be limited to the selected | 1624 True if the code to be formatted should be limited to the selected |
1539 text (or the smallest portion of text that encloses the selected | 1625 text (or the smallest portion of text that encloses the selected |
1540 text that can be formatted). | 1626 text that can be formatted). |
1541 </p> | 1627 </p> |
1542 </field> | 1628 </field> |
1543 --> | 1629 --> |
1544 <field name="lineLength" optional="true"> | 1630 <field name="lineLength" optional="true"> |
1545 <ref>int</ref> | 1631 <ref>int</ref> |
1546 <p> | 1632 <p> |
1547 The line length to be used by the formatter. | 1633 The line length to be used by the formatter. |
1548 </p> | 1634 </p> |
1549 </field> | 1635 </field> |
1550 </params> | 1636 </params> |
1551 <result> | 1637 <result> |
1552 <field name="edits"> | 1638 <field name="edits"> |
1553 <list><ref>SourceEdit</ref></list> | 1639 <list> |
1554 <p> | 1640 <ref>SourceEdit</ref> |
1555 The edit(s) to be applied in order to format the code. The list | 1641 </list> |
1556 will be empty if the code was already formatted (there are no | 1642 <p> |
1557 changes). | 1643 The edit(s) to be applied in order to format the code. The list |
1558 </p> | 1644 will be empty if the code was already formatted (there are no |
1559 </field> | 1645 changes). |
1560 <field name="selectionOffset"> | 1646 </p> |
1561 <ref>int</ref> | 1647 </field> |
1562 <p> | 1648 <field name="selectionOffset"> |
1563 The offset of the selection after formatting the code. | 1649 <ref>int</ref> |
1564 </p> | 1650 <p> |
1565 </field> | 1651 The offset of the selection after formatting the code. |
1566 <field name="selectionLength"> | 1652 </p> |
1567 <ref>int</ref> | 1653 </field> |
1568 <p> | 1654 <field name="selectionLength"> |
1569 The length of the selection after formatting the code. | 1655 <ref>int</ref> |
1570 </p> | 1656 <p> |
1571 </field> | 1657 The length of the selection after formatting the code. |
1572 </result> | 1658 </p> |
1573 </request> | 1659 </field> |
1574 <request method="getAssists"> | 1660 </result> |
1575 <p> | 1661 </request> |
1576 Return the set of assists that are available at the given | 1662 <request method="getAssists"> |
1577 location. An assist is distinguished from a refactoring | 1663 <p> |
1578 primarily by the fact that it affects a single file and does | 1664 Return the set of assists that are available at the given |
1579 not require user input in order to be performed. | 1665 location. An assist is distinguished from a refactoring |
1580 </p> | 1666 primarily by the fact that it affects a single file and does |
1581 <params> | 1667 not require user input in order to be performed. |
1582 <field name="file"> | 1668 </p> |
1583 <ref>FilePath</ref> | 1669 <params> |
1584 <p> | 1670 <field name="file"> |
1585 The file containing the code for which assists are being | 1671 <ref>FilePath</ref> |
1586 requested. | 1672 <p> |
1587 </p> | 1673 The file containing the code for which assists are being |
1588 </field> | 1674 requested. |
1589 <field name="offset"> | 1675 </p> |
1590 <ref>int</ref> | 1676 </field> |
1591 <p> | 1677 <field name="offset"> |
1592 The offset of the code for which assists are being | 1678 <ref>int</ref> |
1593 requested. | 1679 <p> |
1594 </p> | 1680 The offset of the code for which assists are being |
1595 </field> | 1681 requested. |
1596 <field name="length"> | 1682 </p> |
1597 <ref>int</ref> | 1683 </field> |
1598 <p> | 1684 <field name="length"> |
1599 The length of the code for which assists are being | 1685 <ref>int</ref> |
1600 requested. | 1686 <p> |
1601 </p> | 1687 The length of the code for which assists are being |
1602 </field> | 1688 requested. |
1603 </params> | 1689 </p> |
1604 <result> | 1690 </field> |
1605 <field name="assists"> | 1691 </params> |
1606 <list><ref>SourceChange</ref></list> | 1692 <result> |
1607 <p> | 1693 <field name="assists"> |
1608 The assists that are available at the given location. | 1694 <list> |
1609 </p> | 1695 <ref>SourceChange</ref> |
1610 </field> | 1696 </list> |
1611 </result> | 1697 <p> |
1612 </request> | 1698 The assists that are available at the given location. |
1613 <request method="getAvailableRefactorings"> | 1699 </p> |
1614 <p> | 1700 </field> |
1615 Get a list of the kinds of refactorings that are valid for | 1701 </result> |
1616 the given selection in the given file. | 1702 </request> |
1617 </p> | 1703 <request method="getAvailableRefactorings"> |
1618 <params> | 1704 <p> |
1619 <field name="file"> | 1705 Get a list of the kinds of refactorings that are valid for |
1620 <ref>FilePath</ref> | 1706 the given selection in the given file. |
1621 <p> | 1707 </p> |
1622 The file containing the code on which the refactoring | 1708 <params> |
1623 would be based. | 1709 <field name="file"> |
1624 </p> | 1710 <ref>FilePath</ref> |
1625 </field> | 1711 <p> |
1626 <field name="offset"> | 1712 The file containing the code on which the refactoring |
1627 <ref>int</ref> | 1713 would be based. |
1628 <p> | 1714 </p> |
1629 The offset of the code on which the refactoring would be | 1715 </field> |
1630 based. | 1716 <field name="offset"> |
1631 </p> | 1717 <ref>int</ref> |
1632 </field> | 1718 <p> |
1633 <field name="length"> | 1719 The offset of the code on which the refactoring would be |
1634 <ref>int</ref> | 1720 based. |
1635 <p> | 1721 </p> |
1636 The length of the code on which the refactoring would be | 1722 </field> |
1637 based. | 1723 <field name="length"> |
1638 </p> | 1724 <ref>int</ref> |
1639 </field> | 1725 <p> |
1640 </params> | 1726 The length of the code on which the refactoring would be |
1641 <result> | 1727 based. |
1642 <field name="kinds"> | 1728 </p> |
1643 <list><ref>RefactoringKind</ref></list> | 1729 </field> |
1644 <p> | 1730 </params> |
1645 The kinds of refactorings that are valid for the given | 1731 <result> |
1646 selection. | 1732 <field name="kinds"> |
1647 </p> | 1733 <list> |
1648 </field> | 1734 <ref>RefactoringKind</ref> |
1649 </result> | 1735 </list> |
1650 </request> | 1736 <p> |
1651 <request method="getFixes"> | 1737 The kinds of refactorings that are valid for the given |
1652 <p> | 1738 selection. |
1653 Return the set of fixes that are available for the errors at | 1739 </p> |
1654 a given offset in a given file. | 1740 </field> |
1655 </p> | 1741 </result> |
1656 <params> | 1742 </request> |
1657 <field name="file"> | 1743 <request method="getFixes"> |
1658 <ref>FilePath</ref> | 1744 <p> |
1659 <p> | 1745 Return the set of fixes that are available for the errors at |
1660 The file containing the errors for which fixes are being | 1746 a given offset in a given file. |
1661 requested. | 1747 </p> |
1662 </p> | 1748 <params> |
1663 </field> | 1749 <field name="file"> |
1664 <field name="offset"> | 1750 <ref>FilePath</ref> |
1665 <ref>int</ref> | 1751 <p> |
1666 <p> | 1752 The file containing the errors for which fixes are being |
1667 The offset used to select the errors for which fixes | 1753 requested. |
1668 will be returned. | 1754 </p> |
1669 </p> | 1755 </field> |
1670 </field> | 1756 <field name="offset"> |
1671 </params> | 1757 <ref>int</ref> |
1672 <result> | 1758 <p> |
1673 <field name="fixes"> | 1759 The offset used to select the errors for which fixes |
1674 <list><ref>AnalysisErrorFixes</ref></list> | 1760 will be returned. |
1675 <p> | 1761 </p> |
1676 The fixes that are available for the errors at the given offset. | 1762 </field> |
1677 </p> | 1763 </params> |
1678 </field> | 1764 <result> |
1679 </result> | 1765 <field name="fixes"> |
1680 </request> | 1766 <list> |
1681 <request method="getRefactoring"> | 1767 <ref>AnalysisErrorFixes</ref> |
1682 <p> | 1768 </list> |
1683 Get the changes required to perform a refactoring. | 1769 <p> |
1684 </p> | 1770 The fixes that are available for the errors at the given offset. |
1685 <p> | 1771 </p> |
1686 If another refactoring request is received during the processing | 1772 </field> |
1687 of this one, an error of type <tt>REFACTORING_REQUEST_CANCELLED</tt> | 1773 </result> |
1688 will be generated. | 1774 </request> |
1689 </p> | 1775 <request method="getRefactoring"> |
1690 <params> | 1776 <p> |
1691 <field name="kind"> | 1777 Get the changes required to perform a refactoring. |
1692 <ref>RefactoringKind</ref> | 1778 </p> |
1693 <p> | 1779 <p> |
1694 The kind of refactoring to be performed. | 1780 If another refactoring request is received during the processing |
1695 </p> | 1781 of this one, an error of type <tt>REFACTORING_REQUEST_CANCELLED</tt> |
1696 </field> | 1782 will be generated. |
1697 <field name="file"> | 1783 </p> |
1698 <ref>FilePath</ref> | 1784 <params> |
1699 <p> | 1785 <field name="kind"> |
1700 The file containing the code involved in the | 1786 <ref>RefactoringKind</ref> |
1701 refactoring. | 1787 <p> |
1702 </p> | 1788 The kind of refactoring to be performed. |
1703 </field> | 1789 </p> |
1704 <field name="offset"> | 1790 </field> |
1705 <ref>int</ref> | 1791 <field name="file"> |
1706 <p> | 1792 <ref>FilePath</ref> |
1707 The offset of the region involved in the refactoring. | 1793 <p> |
1708 </p> | 1794 The file containing the code involved in the |
1709 </field> | 1795 refactoring. |
1710 <field name="length"> | 1796 </p> |
1711 <ref>int</ref> | 1797 </field> |
1712 <p> | 1798 <field name="offset"> |
1713 The length of the region involved in the refactoring. | 1799 <ref>int</ref> |
1714 </p> | 1800 <p> |
1715 </field> | 1801 The offset of the region involved in the refactoring. |
1716 <field name="validateOnly"> | 1802 </p> |
1717 <ref>bool</ref> | 1803 </field> |
1718 <p> | 1804 <field name="length"> |
1719 True if the client is only requesting that the values of | 1805 <ref>int</ref> |
1720 the options be validated and no change be generated. | 1806 <p> |
1721 </p> | 1807 The length of the region involved in the refactoring. |
1722 </field> | 1808 </p> |
1723 <field name="options" optional="true"> | 1809 </field> |
1724 <ref>RefactoringOptions</ref> | 1810 <field name="validateOnly"> |
1725 <p> | 1811 <ref>bool</ref> |
1726 Data used to provide values provided by the user. The | 1812 <p> |
1727 structure of the data is dependent on the kind of | 1813 True if the client is only requesting that the values of |
1728 refactoring being performed. The data that is expected is | 1814 the options be validated and no change be generated. |
1729 documented in the section titled <a | 1815 </p> |
1730 href="#refactorings">Refactorings</a>, labeled as | 1816 </field> |
1731 "Options". This field can be omitted if the refactoring | 1817 <field name="options" optional="true"> |
1732 does not require any options or if the values of those | 1818 <ref>RefactoringOptions</ref> |
1733 options are not known. | 1819 <p> |
1734 </p> | 1820 Data used to provide values provided by the user. The |
1735 </field> | 1821 structure of the data is dependent on the kind of |
1736 </params> | 1822 refactoring being performed. The data that is expected is |
1737 <result> | 1823 documented in the section titled <a |
1738 <field name="initialProblems"> | 1824 href="#refactorings">Refactorings</a>, labeled as |
1739 <list><ref>RefactoringProblem</ref></list> | 1825 "Options". This field can be omitted if the refactoring |
1740 <p> | 1826 does not require any options or if the values of those |
1741 The initial status of the refactoring, i.e. problems related to | 1827 options are not known. |
1742 the context in which the refactoring is requested. | 1828 </p> |
1743 The array will be empty if there are no known problems. | 1829 </field> |
1744 </p> | 1830 </params> |
1745 </field> | 1831 <result> |
1746 <field name="optionsProblems"> | 1832 <field name="initialProblems"> |
1747 <list><ref>RefactoringProblem</ref></list> | 1833 <list> |
1748 <p> | 1834 <ref>RefactoringProblem</ref> |
1749 The options validation status, i.e. problems in the given options, | 1835 </list> |
1750 such as light-weight validation of a new name, flags | 1836 <p> |
1751 compatibility, etc. | 1837 The initial status of the refactoring, i.e. problems related to |
1752 The array will be empty if there are no known problems. | 1838 the context in which the refactoring is requested. |
1753 </p> | 1839 The array will be empty if there are no known problems. |
1754 </field> | 1840 </p> |
1755 <field name="finalProblems"> | 1841 </field> |
1756 <list><ref>RefactoringProblem</ref></list> | 1842 <field name="optionsProblems"> |
1757 <p> | 1843 <list> |
1758 The final status of the refactoring, i.e. problems identified in | 1844 <ref>RefactoringProblem</ref> |
1759 the result of a full, potentially expensive validation and / or | 1845 </list> |
1760 change creation. | 1846 <p> |
1761 The array will be empty if there are no known problems. | 1847 The options validation status, i.e. problems in the given options, |
1762 </p> | 1848 such as light-weight validation of a new name, flags |
1763 </field> | 1849 compatibility, etc. |
1764 <field name="feedback" optional="true"> | 1850 The array will be empty if there are no known problems. |
1765 <ref>RefactoringFeedback</ref> | 1851 </p> |
1766 <p> | 1852 </field> |
1767 Data used to provide feedback to the user. The structure | 1853 <field name="finalProblems"> |
1768 of the data is dependent on the kind of refactoring | 1854 <list> |
1769 being created. The data that is returned is documented | 1855 <ref>RefactoringProblem</ref> |
1770 in the section titled <a | 1856 </list> |
1771 href="#refactorings">Refactorings</a>, labeled as | 1857 <p> |
1772 "Feedback". | 1858 The final status of the refactoring, i.e. problems identified in |
1773 </p> | 1859 the result of a full, potentially expensive validation and / or |
1774 </field> | 1860 change creation. |
1775 <field name="change" optional="true"> | 1861 The array will be empty if there are no known problems. |
1776 <ref>SourceChange</ref> | 1862 </p> |
1777 <p> | 1863 </field> |
1778 The changes that are to be applied to affect the | 1864 <field name="feedback" optional="true"> |
1779 refactoring. This field will be omitted if there are | 1865 <ref>RefactoringFeedback</ref> |
1780 problems that prevent a set of changes from being | 1866 <p> |
1781 computed, such as having no options specified for a | 1867 Data used to provide feedback to the user. The structure |
1782 refactoring that requires them, or if only validation | 1868 of the data is dependent on the kind of refactoring |
1783 was requested. | 1869 being created. The data that is returned is documented |
1784 </p> | 1870 in the section titled <a |
1785 </field> | 1871 href="#refactorings">Refactorings</a>, labeled as |
1786 <field name="potentialEdits" optional="true"> | 1872 "Feedback". |
1787 <list><ref>String</ref></list> | 1873 </p> |
1788 <p> | 1874 </field> |
1789 The ids of source edits that are not known to be valid. An edit is | 1875 <field name="change" optional="true"> |
1790 not known to be valid if there was insufficient type information | 1876 <ref>SourceChange</ref> |
1791 for the server to be able to determine whether or not the code | 1877 <p> |
1792 needs to be modified, such as when a member is being renamed and | 1878 The changes that are to be applied to affect the |
1793 there is a reference to a member from an unknown type. This field | 1879 refactoring. This field will be omitted if there are |
1794 will be omitted if the change field is omitted or if there are no | 1880 problems that prevent a set of changes from being |
1795 potential edits for the refactoring. | 1881 computed, such as having no options specified for a |
1796 </p> | 1882 refactoring that requires them, or if only validation |
1797 </field> | 1883 was requested. |
1798 </result> | 1884 </p> |
1799 </request> | 1885 </field> |
1800 <request method="getStatementCompletion" experimental="true"> | 1886 <field name="potentialEdits" optional="true"> |
1801 <p> | 1887 <list> |
1802 Get the changes required to convert the partial statement at the given | 1888 <ref>String</ref> |
1803 location into a syntactically valid statement. If the current statemen
t | 1889 </list> |
1804 is already valid the change will insert a newline plus appropriate | 1890 <p> |
1805 indentation at the end of the line containing the offset. | 1891 The ids of source edits that are not known to be valid. An edit is |
1806 If a change that makes the statement valid cannot be determined (perha
ps | 1892 not known to be valid if there was insufficient type information |
1807 because it has not yet been implemented) the statement will be conside
red | 1893 for the server to be able to determine whether or not the code |
1808 already valid and the appropriate change returned. | 1894 needs to be modified, such as when a member is being renamed and |
1809 </p> | 1895 there is a reference to a member from an unknown type. This field |
1810 <params> | 1896 will be omitted if the change field is omitted or if there are no |
1811 <field name="file"> | 1897 potential edits for the refactoring. |
1812 <ref>FilePath</ref> | 1898 </p> |
1813 <p> | 1899 </field> |
1814 The file containing the statement to be completed. | 1900 </result> |
1815 </p> | 1901 </request> |
1816 </field> | 1902 <request method="getStatementCompletion" experimental="true"> |
1817 <field name="offset"> | 1903 <p> |
1818 <ref>int</ref> | 1904 Get the changes required to convert the partial statement at the given |
1819 <p> | 1905 location into a syntactically valid statement. If the current statement |
1820 The offset used to identify the statement to be completed. | 1906 is already valid the change will insert a newline plus appropriate |
1821 </p> | 1907 indentation at the end of the line containing the offset. |
1822 </field> | 1908 If a change that makes the statement valid cannot be determined (perhaps |
1823 </params> | 1909 because it has not yet been implemented) the statement will be considered |
1824 <result> | 1910 already valid and the appropriate change returned. |
1825 <field name="change"> | 1911 </p> |
1826 <ref>SourceChange</ref> | 1912 <params> |
1827 <p> | 1913 <field name="file"> |
1828 The change to be applied in order to complete the statement. | 1914 <ref>FilePath</ref> |
1829 </p> | 1915 <p> |
1830 </field> | 1916 The file containing the statement to be completed. |
1831 <field name="whitespaceOnly"> | 1917 </p> |
1832 <ref>bool</ref> | 1918 </field> |
1833 <p> | 1919 <field name="offset"> |
1834 Will be true if the change contains nothing but whitespace | 1920 <ref>int</ref> |
1835 characters, or is empty. | 1921 <p> |
1836 </p> | 1922 The offset used to identify the statement to be completed. |
1837 </field> | 1923 </p> |
1838 </result> | 1924 </field> |
1839 </request> | 1925 </params> |
1840 <request method="sortMembers"> | 1926 <result> |
1841 <p> | 1927 <field name="change"> |
1842 Sort all of the directives, unit and class members | 1928 <ref>SourceChange</ref> |
1843 of the given Dart file. | 1929 <p> |
1844 </p> | 1930 The change to be applied in order to complete the statement. |
1845 <p> | 1931 </p> |
1846 If a request is made for a file that does not exist, does not belong | 1932 </field> |
1847 to an analysis root or is not a Dart file, | 1933 <field name="whitespaceOnly"> |
1848 <tt>SORT_MEMBERS_INVALID_FILE</tt> will be generated. | 1934 <ref>bool</ref> |
1849 </p> | 1935 <p> |
1850 <p> | 1936 Will be true if the change contains nothing but whitespace |
1851 If the Dart file has scan or parse errors, | 1937 characters, or is empty. |
1852 <tt>SORT_MEMBERS_PARSE_ERRORS</tt> will be generated. | 1938 </p> |
1853 </p> | 1939 </field> |
1854 <params> | 1940 </result> |
1855 <field name="file"> | 1941 </request> |
1856 <ref>FilePath</ref> | 1942 <request method="sortMembers"> |
1857 <p> | 1943 <p> |
1858 The Dart file to sort. | 1944 Sort all of the directives, unit and class members |
1859 </p> | 1945 of the given Dart file. |
1860 </field> | 1946 </p> |
1861 </params> | 1947 <p> |
1862 <result> | 1948 If a request is made for a file that does not exist, does not belong |
1863 <field name="edit"> | 1949 to an analysis root or is not a Dart file, |
1864 <ref>SourceFileEdit</ref> | 1950 <tt>SORT_MEMBERS_INVALID_FILE</tt> will be generated. |
1865 <p> | 1951 </p> |
1866 The file edit that is to be applied to the given file to effect | 1952 <p> |
1867 the sorting. | 1953 If the Dart file has scan or parse errors, |
1868 </p> | 1954 <tt>SORT_MEMBERS_PARSE_ERRORS</tt> will be generated. |
1869 </field> | 1955 </p> |
1870 </result> | 1956 <params> |
1871 </request> | 1957 <field name="file"> |
1872 <request method="organizeDirectives"> | 1958 <ref>FilePath</ref> |
1873 <p> | 1959 <p> |
1874 Organizes all of the directives - removes unused imports and sorts | 1960 The Dart file to sort. |
1875 directives of the given Dart file according to the | 1961 </p> |
1876 <a href="https://www.dartlang.org/articles/style-guide/">Dart Style Gu
ide</a>. | 1962 </field> |
1877 </p> | 1963 </params> |
1878 <p> | 1964 <result> |
1879 If a request is made for a file that does not exist, does not belong | 1965 <field name="edit"> |
1880 to an analysis root or is not a Dart file, | 1966 <ref>SourceFileEdit</ref> |
1881 <tt>FILE_NOT_ANALYZED</tt> will be generated. | 1967 <p> |
1882 </p> | 1968 The file edit that is to be applied to the given file to effect |
1883 <p> | 1969 the sorting. |
1884 If directives of the Dart file cannot be organized, for example | 1970 </p> |
1885 because it has scan or parse errors, or by other reasons, | 1971 </field> |
1886 <tt>ORGANIZE_DIRECTIVES_ERROR</tt> will be generated. The message | 1972 </result> |
1887 will provide details about the reason. | 1973 </request> |
1888 </p> | 1974 <request method="organizeDirectives"> |
1889 <params> | 1975 <p> |
1890 <field name="file"> | 1976 Organizes all of the directives - removes unused imports and sorts |
1891 <ref>FilePath</ref> | 1977 directives of the given Dart file according to the |
1892 <p> | 1978 <a href="https://www.dartlang.org/articles/style-guide/">Dart Style |
1893 The Dart file to organize directives in. | 1979 Guide</a>. |
1894 </p> | 1980 </p> |
1895 </field> | 1981 <p> |
1896 </params> | 1982 If a request is made for a file that does not exist, does not belong |
1897 <result> | 1983 to an analysis root or is not a Dart file, |
1898 <field name="edit"> | 1984 <tt>FILE_NOT_ANALYZED</tt> will be generated. |
1899 <ref>SourceFileEdit</ref> | 1985 </p> |
1900 <p> | 1986 <p> |
1901 The file edit that is to be applied to the given file to effect | 1987 If directives of the Dart file cannot be organized, for example |
1902 the organizing. | 1988 because it has scan or parse errors, or by other reasons, |
1903 </p> | 1989 <tt>ORGANIZE_DIRECTIVES_ERROR</tt> will be generated. The message |
1904 </field> | 1990 will provide details about the reason. |
1905 </result> | 1991 </p> |
1906 </request> | 1992 <params> |
1907 </domain> | 1993 <field name="file"> |
1908 <domain name="execution"> | 1994 <ref>FilePath</ref> |
1909 <p> | 1995 <p> |
1910 The execution domain contains commands related to providing an execution | 1996 The Dart file to organize directives in. |
1911 or debugging experience. | 1997 </p> |
1912 </p> | 1998 </field> |
1913 <request method="createContext"> | 1999 </params> |
1914 <p> | 2000 <result> |
1915 Create an execution context for the executable file with the given | 2001 <field name="edit"> |
1916 path. The context that is created will persist until | 2002 <ref>SourceFileEdit</ref> |
1917 execution.deleteContext is used to delete it. Clients, therefore, are | 2003 <p> |
1918 responsible for managing the lifetime of execution contexts. | 2004 The file edit that is to be applied to the given file to effect |
1919 </p> | 2005 the organizing. |
1920 <params> | 2006 </p> |
1921 <field name="contextRoot"> | 2007 </field> |
1922 <ref>FilePath</ref> | 2008 </result> |
1923 <p> | 2009 </request> |
1924 The path of the Dart or HTML file that will be launched, or the | 2010 </domain> |
1925 path of the directory containing the file. | 2011 <domain name="execution"> |
1926 </p> | 2012 <p> |
1927 </field> | 2013 The execution domain contains commands related to providing an execution |
1928 </params> | 2014 or debugging experience. |
1929 <result> | 2015 </p> |
1930 <field name="id"> | 2016 <request method="createContext"> |
1931 <ref>ExecutionContextId</ref> | 2017 <p> |
1932 <p> | 2018 Create an execution context for the executable file with the given |
1933 The identifier used to refer to the execution context that was | 2019 path. The context that is created will persist until |
1934 created. | 2020 execution.deleteContext is used to delete it. Clients, therefore, are |
1935 </p> | 2021 responsible for managing the lifetime of execution contexts. |
1936 </field> | 2022 </p> |
1937 </result> | 2023 <params> |
1938 </request> | 2024 <field name="contextRoot"> |
1939 <request method="deleteContext"> | 2025 <ref>FilePath</ref> |
1940 <p> | 2026 <p> |
1941 Delete the execution context with the given identifier. The context id | 2027 The path of the Dart or HTML file that will be launched, or the |
1942 is no longer valid after this command. The server is allowed to re-use | 2028 path of the directory containing the file. |
1943 ids when they are no longer valid. | 2029 </p> |
1944 </p> | 2030 </field> |
1945 <params> | 2031 </params> |
1946 <field name="id"> | 2032 <result> |
1947 <ref>ExecutionContextId</ref> | 2033 <field name="id"> |
1948 <p> | 2034 <ref>ExecutionContextId</ref> |
1949 The identifier of the execution context that is to be deleted. | 2035 <p> |
1950 </p> | 2036 The identifier used to refer to the execution context that was |
1951 </field> | 2037 created. |
1952 </params> | 2038 </p> |
1953 </request> | 2039 </field> |
1954 <request method="mapUri"> | 2040 </result> |
1955 <p> | 2041 </request> |
1956 Map a URI from the execution context to the file that it corresponds | 2042 <request method="deleteContext"> |
1957 to, or map a file to the URI that it corresponds to in the execution | 2043 <p> |
1958 context. | 2044 Delete the execution context with the given identifier. The context id |
1959 </p> | 2045 is no longer valid after this command. The server is allowed to re-use |
1960 <p> | 2046 ids when they are no longer valid. |
1961 Exactly one of the file and uri fields must be provided. If both | 2047 </p> |
1962 fields are provided, then an error of type <tt>INVALID_PARAMETER</tt> | 2048 <params> |
1963 will be generated. Similarly, if neither field is provided, then an | 2049 <field name="id"> |
1964 error of type <tt>INVALID_PARAMETER</tt> will be generated. | 2050 <ref>ExecutionContextId</ref> |
1965 </p> | 2051 <p> |
1966 <p> | 2052 The identifier of the execution context that is to be deleted. |
1967 If the file field is provided and the value is not the path of a file | 2053 </p> |
1968 (either the file does not exist or the path references something other | 2054 </field> |
1969 than a file), then an error of type <tt>INVALID_PARAMETER</tt> will | 2055 </params> |
1970 be generated. | 2056 </request> |
1971 </p> | 2057 <request method="mapUri"> |
1972 <p> | 2058 <p> |
1973 If the uri field is provided and the value is not a valid URI or if | 2059 Map a URI from the execution context to the file that it corresponds |
1974 the URI references something that is not a file (either a file that | 2060 to, or map a file to the URI that it corresponds to in the execution |
1975 does not exist or something other than a file), then an error of type | 2061 context. |
1976 <tt>INVALID_PARAMETER</tt> will be generated. | 2062 </p> |
1977 </p> | 2063 <p> |
1978 <p> | 2064 Exactly one of the file and uri fields must be provided. If both |
1979 If the contextRoot used to create the execution context does not | 2065 fields are provided, then an error of type <tt>INVALID_PARAMETER</tt> |
1980 exist, then an error of type <tt>INVALID_EXECUTION_CONTEXT</tt> will | 2066 will be generated. Similarly, if neither field is provided, then an |
1981 be generated. | 2067 error of type <tt>INVALID_PARAMETER</tt> will be generated. |
1982 </p> | 2068 </p> |
1983 <params> | 2069 <p> |
1984 <field name="id"> | 2070 If the file field is provided and the value is not the path of a file |
1985 <ref>ExecutionContextId</ref> | 2071 (either the file does not exist or the path references something other |
1986 <p> | 2072 than a file), then an error of type <tt>INVALID_PARAMETER</tt> will |
1987 The identifier of the execution context in which the URI is to be | 2073 be generated. |
1988 mapped. | 2074 </p> |
1989 </p> | 2075 <p> |
1990 </field> | 2076 If the uri field is provided and the value is not a valid URI or if |
1991 <field name="file" optional="true"> | 2077 the URI references something that is not a file (either a file that |
1992 <ref>FilePath</ref> | 2078 does not exist or something other than a file), then an error of type |
1993 <p> | 2079 <tt>INVALID_PARAMETER</tt> will be generated. |
1994 The path of the file to be mapped into a URI. | 2080 </p> |
1995 </p> | 2081 <p> |
1996 </field> | 2082 If the contextRoot used to create the execution context does not |
1997 <field name="uri" optional="true"> | 2083 exist, then an error of type <tt>INVALID_EXECUTION_CONTEXT</tt> will |
1998 <ref>String</ref> | 2084 be generated. |
1999 <p> | 2085 </p> |
2000 The URI to be mapped into a file path. | 2086 <params> |
2001 </p> | 2087 <field name="id"> |
2002 </field> | 2088 <ref>ExecutionContextId</ref> |
2003 </params> | 2089 <p> |
2004 <result> | 2090 The identifier of the execution context in which the URI is to be |
2005 <field name="file" optional="true"> | 2091 mapped. |
2006 <ref>FilePath</ref> | 2092 </p> |
2007 <p> | 2093 </field> |
2008 The file to which the URI was mapped. This field is omitted if the | 2094 <field name="file" optional="true"> |
2009 uri field was not given in the request. | 2095 <ref>FilePath</ref> |
2010 </p> | 2096 <p> |
2011 </field> | 2097 The path of the file to be mapped into a URI. |
2012 <field name="uri" optional="true"> | 2098 </p> |
2013 <ref>String</ref> | 2099 </field> |
2014 <p> | 2100 <field name="uri" optional="true"> |
2015 The URI to which the file path was mapped. This field is omitted | 2101 <ref>String</ref> |
2016 if the file field was not given in the request. | 2102 <p> |
2017 </p> | 2103 The URI to be mapped into a file path. |
2018 </field> | 2104 </p> |
2019 </result> | 2105 </field> |
2020 </request> | 2106 </params> |
2021 <request method="setSubscriptions" deprecated="true"> | 2107 <result> |
2022 <p> | 2108 <field name="file" optional="true"> |
2023 <b>Deprecated:</b> the analysis server no longer fires | 2109 <ref>FilePath</ref> |
2024 <tt>LAUNCH_DATA</tt> events. | 2110 <p> |
2025 </p> | 2111 The file to which the URI was mapped. This field is omitted if the |
2026 <p> | 2112 uri field was not given in the request. |
2027 Subscribe for services. All previous subscriptions are replaced by the | 2113 </p> |
2028 given set of services. | 2114 </field> |
2029 </p> | 2115 <field name="uri" optional="true"> |
2030 <p> | 2116 <ref>String</ref> |
2031 It is an error if any of the elements in the list are not valid | 2117 <p> |
2032 services. If there is an error, then the current subscriptions will | 2118 The URI to which the file path was mapped. This field is omitted |
2033 remain unchanged. | 2119 if the file field was not given in the request. |
2034 </p> | 2120 </p> |
2035 <params> | 2121 </field> |
2036 <field name="subscriptions"> | 2122 </result> |
2037 <list><ref>ExecutionService</ref></list> | 2123 </request> |
2038 <p> | 2124 <request method="setSubscriptions" deprecated="true"> |
2039 A list of the services being subscribed to. | 2125 <p> |
2040 </p> | 2126 <b>Deprecated:</b> the analysis server no longer fires |
2041 </field> | 2127 <tt>LAUNCH_DATA</tt> events. |
2042 </params> | 2128 </p> |
2043 </request> | 2129 <p> |
2044 <notification event="launchData"> | 2130 Subscribe for services. All previous subscriptions are replaced by the |
2045 <p> | 2131 given set of services. |
2046 Reports information needed to allow a single file to be launched. | 2132 </p> |
2047 </p> | 2133 <p> |
2048 <p> | 2134 It is an error if any of the elements in the list are not valid |
2049 This notification is not subscribed to by default. Clients can | 2135 services. If there is an error, then the current subscriptions will |
2050 subscribe by including the value "LAUNCH_DATA" in the list of services | 2136 remain unchanged. |
2051 passed in an <tt>execution.setSubscriptions</tt> request. | 2137 </p> |
2052 </p> | 2138 <params> |
2053 <params> | 2139 <field name="subscriptions"> |
2054 <field name="file"> | 2140 <list> |
2055 <ref>FilePath</ref> | 2141 <ref>ExecutionService</ref> |
2056 <p> | 2142 </list> |
2057 The file for which launch data is being provided. This will either | 2143 <p> |
2058 be a Dart library or an HTML file. | 2144 A list of the services being subscribed to. |
2059 </p> | 2145 </p> |
2060 </field> | 2146 </field> |
2061 <field name="kind" optional="true"> | 2147 </params> |
2062 <ref>ExecutableKind</ref> | 2148 </request> |
2063 <p> | 2149 <notification event="launchData"> |
2064 The kind of the executable file. This field is omitted if the file | 2150 <p> |
2065 is not a Dart file. | 2151 Reports information needed to allow a single file to be launched. |
2066 </p> | 2152 </p> |
2067 </field> | 2153 <p> |
2068 <field name="referencedFiles" optional="true"> | 2154 This notification is not subscribed to by default. Clients can |
2069 <list><ref>FilePath</ref></list> | 2155 subscribe by including the value "LAUNCH_DATA" in the list of services |
2070 <p> | 2156 passed in an <tt>execution.setSubscriptions</tt> request. |
2071 A list of the Dart files that are referenced by the file. This | 2157 </p> |
2072 field is omitted if the file is not an HTML file. | 2158 <params> |
2073 </p> | 2159 <field name="file"> |
2074 </field> | 2160 <ref>FilePath</ref> |
2075 </params> | 2161 <p> |
2076 </notification> | 2162 The file for which launch data is being provided. This will either |
2077 </domain> | 2163 be a Dart library or an HTML file. |
2078 <domain name="diagnostic"> | 2164 </p> |
2079 <p> | 2165 </field> |
2080 The diagnostic domain contains server diagnostics APIs. | 2166 <field name="kind" optional="true"> |
2081 </p> | 2167 <ref>ExecutableKind</ref> |
2082 <request method="getDiagnostics"> | 2168 <p> |
2083 <p>Return server diagnostics.</p> | 2169 The kind of the executable file. This field is omitted if the file |
2084 <result> | 2170 is not a Dart file. |
2085 <field name="contexts"> | 2171 </p> |
2086 <list><ref>ContextData</ref></list> | 2172 </field> |
2087 <p>The list of analysis contexts.</p> | 2173 <field name="referencedFiles" optional="true"> |
2088 </field> | 2174 <list> |
2089 </result> | 2175 <ref>FilePath</ref> |
2090 </request> | 2176 </list> |
2091 <request method="getServerPort"> | 2177 <p> |
2092 <p> | 2178 A list of the Dart files that are referenced by the file. This |
2093 Return the port of the diagnostic web server. If the server is not run
ning | 2179 field is omitted if the file is not an HTML file. |
2094 this call will start the server. If unable to start the diagnostic web
server, | 2180 </p> |
2095 this call will return an error of <tt>DEBUG_PORT_COULD_NOT_BE_OPENED</
tt>. | 2181 </field> |
2096 </p> | 2182 </params> |
2097 <result> | 2183 </notification> |
2098 <field name="port"> | 2184 </domain> |
2099 <ref>int</ref> | 2185 <domain name="diagnostic"> |
2100 <p>The diagnostic server port.</p> | 2186 <p> |
2101 </field> | 2187 The diagnostic domain contains server diagnostics APIs. |
2102 </result> | 2188 </p> |
2103 </request> | 2189 <request method="getDiagnostics"> |
2104 </domain> | 2190 <p>Return server diagnostics.</p> |
2105 <types> | 2191 <result> |
2106 <h2 class="domain"><a name="types">Types</a></h2> | 2192 <field name="contexts"> |
2107 <p> | 2193 <list> |
2108 This section contains descriptions of the data types referenced | 2194 <ref>ContextData</ref> |
2109 in the API’s of the various domains. | 2195 </list> |
2110 </p> | 2196 <p>The list of analysis contexts.</p> |
2111 <type name="AddContentOverlay"> | 2197 </field> |
2112 <p> | 2198 </result> |
2113 A directive to begin overlaying the contents of a file. The | 2199 </request> |
2114 supplied content will be used for analysis in place of the | 2200 <request method="getServerPort"> |
2115 file contents in the filesystem. | 2201 <p> |
2116 </p> | 2202 Return the port of the diagnostic web server. If the server is not running |
2117 <p> | 2203 this call will start the server. If unable to start the diagnostic web |
2118 If this directive is used on a file that already has a file | 2204 server, |
2119 content overlay, the old overlay is discarded and replaced | 2205 this call will return an error of <tt>DEBUG_PORT_COULD_NOT_BE_OPENED</tt>. |
2120 with the new one. | 2206 </p> |
2121 </p> | 2207 <result> |
2122 <object> | 2208 <field name="port"> |
2123 <field name="type" value="add"><ref>String</ref></field> | 2209 <ref>int</ref> |
2124 <field name="content"> | 2210 <p>The diagnostic server port.</p> |
2125 <ref>String</ref> | 2211 </field> |
2126 <p> | 2212 </result> |
2127 The new content of the file. | 2213 </request> |
2128 </p> | 2214 </domain> |
2129 </field> | 2215 <types> |
2130 </object> | 2216 <h2 class="domain"><a name="types">Types</a></h2> |
2131 </type> | 2217 <p> |
2132 <type name="AnalysisError"> | 2218 This section contains descriptions of the data types referenced |
2133 <p> | 2219 in the API’s of the various domains. |
2134 An indication of an error, warning, or hint that was produced | 2220 </p> |
2135 by the analysis. | 2221 <include path="../../../analyzer_plugin/tool/spec/common_types_spec.html" |
2136 </p> | 2222 import="package:analyzer_plugin/protocol/protocol_common.dart"></incl
ude> |
2137 <object> | 2223 <type name="AnalysisErrorFixes"> |
2138 <field name="severity"> | 2224 <p> |
2139 <ref>AnalysisErrorSeverity</ref> | 2225 A list of fixes associated with a specific error. |
2140 <p> | 2226 </p> |
2141 The severity of the error. | 2227 <object> |
2142 </p> | 2228 <field name="error"> |
2143 </field> | 2229 <ref>AnalysisError</ref> |
2144 <field name="type"> | 2230 <p> |
2145 <ref>AnalysisErrorType</ref> | 2231 The error with which the fixes are associated. |
2146 <p> | 2232 </p> |
2147 The type of the error. | 2233 </field> |
2148 </p> | 2234 <field name="fixes"> |
2149 </field> | 2235 <list> |
2150 <field name="location"> | 2236 <ref>SourceChange</ref> |
2151 <ref>Location</ref> | 2237 </list> |
2152 <p> | 2238 <p> |
2153 The location associated with the error. | 2239 The fixes associated with the error. |
2154 </p> | 2240 </p> |
2155 </field> | 2241 </field> |
2156 <field name="message"> | 2242 </object> |
2157 <ref>String</ref> | 2243 </type> |
2158 <p> | 2244 <type name="AnalysisOptions" deprecated="true"> |
2159 The message to be displayed for this error. The message | 2245 <p><b>Deprecated:</b> the only reference to this type has been |
2160 should indicate what is wrong with the code and why it is | 2246 deprecated.</p> |
2161 wrong. | 2247 <p> |
2162 </p> | 2248 A set of options controlling what kind of analysis is to be |
2163 </field> | 2249 performed. If the value of a field is omitted the value of the |
2164 <field name="correction" optional="true"> | 2250 option will not be changed. |
2165 <ref>String</ref> | 2251 </p> |
2166 <p> | 2252 <object> |
2167 The correction message to be displayed for this error. The | 2253 <field name="enableAsync" optional="true" deprecated="true"> |
2168 correction message should indicate how the user can fix | 2254 <ref>bool</ref> |
2169 the error. The field is omitted if there is no correction | 2255 <p><b>Deprecated:</b> this feature is always enabled.</p> |
2170 message associated with the error code. | 2256 <p> |
2171 </p> | 2257 True if the client wants to enable support for the |
2172 </field> | 2258 proposed async feature. |
2173 <field name="code"> | 2259 </p> |
2174 <ref>String</ref> | 2260 </field> |
2175 <p> | 2261 <field name="enableDeferredLoading" optional="true" deprecated="true"> |
2176 The name, as a string, of the error code associated with this erro
r. | 2262 <ref>bool</ref> |
2177 </p> | 2263 <p><b>Deprecated:</b> this feature is always enabled.</p> |
2178 </field> | 2264 <p> |
2179 <field name="hasFix" optional="true"> | 2265 True if the client wants to enable support for the |
2180 <ref>bool</ref> | 2266 proposed deferred loading feature. |
2181 <p> | 2267 </p> |
2182 A hint to indicate to interested clients that this error has | 2268 </field> |
2183 an associated fix (or fixes). The absence of this field implies | 2269 <field name="enableEnums" optional="true" deprecated="true"> |
2184 there are not known to be fixes. Note that since the operation | 2270 <ref>bool</ref> |
2185 to calculate whether fixes apply needs to be performant it is | 2271 <p><b>Deprecated:</b> this feature is always enabled.</p> |
2186 possible that complicated tests will be skipped and a false | 2272 <p> |
2187 negative returned. For this reason, this attribute should be | 2273 True if the client wants to enable support for the |
2188 treated as a "hint". Despite the possibility of false negatives, | 2274 proposed enum feature. |
2189 no false positives should be returned. If a client sees this | 2275 </p> |
2190 flag set they can proceed with the confidence that there are in | 2276 </field> |
2191 fact associated fixes. | 2277 <field name="enableNullAwareOperators" optional="true" deprecated="true"> |
2192 </p> | 2278 <ref>bool</ref> |
2193 </field> | 2279 <p><b>Deprecated:</b> this feature is always enabled.</p> |
2194 </object> | 2280 <p> |
2195 </type> | 2281 True if the client wants to enable support for the |
2196 <type name="AnalysisErrorFixes"> | 2282 proposed "null aware operators" feature. |
2197 <p> | 2283 </p> |
2198 A list of fixes associated with a specific error. | 2284 </field> |
2199 </p> | 2285 <field name="enableSuperMixins" optional="true"> |
2200 <object> | 2286 <ref>bool</ref> |
2201 <field name="error"> | 2287 <p> |
2202 <ref>AnalysisError</ref> | 2288 True if the client wants to enable support for the |
2203 <p> | 2289 proposed "less restricted mixins" proposal (DEP 34). |
2204 The error with which the fixes are associated. | 2290 </p> |
2205 </p> | 2291 </field> |
2206 </field> | 2292 <field name="generateDart2jsHints" optional="true"> |
2207 <field name="fixes"> | 2293 <ref>bool</ref> |
2208 <list><ref>SourceChange</ref></list> | 2294 <p> |
2209 <p> | 2295 True if hints that are specific to dart2js should be |
2210 The fixes associated with the error. | 2296 generated. This option is ignored if generateHints is false. |
2211 </p> | 2297 </p> |
2212 </field> | 2298 </field> |
2213 </object> | 2299 <field name="generateHints" optional="true"> |
2214 </type> | 2300 <ref>bool</ref> |
2215 <type name="AnalysisErrorSeverity"> | 2301 <p> |
2216 <p> | 2302 True if hints should be generated as part of generating |
2217 An enumeration of the possible severities of analysis | 2303 errors and warnings. |
| 2304 </p> |
| 2305 </field> |
| 2306 <field name="generateLints" optional="true"> |
| 2307 <ref>bool</ref> |
| 2308 <p> |
| 2309 True if lints should be generated as part of generating |
| 2310 errors and warnings. |
| 2311 </p> |
| 2312 </field> |
| 2313 </object> |
| 2314 </type> |
| 2315 <type name="AnalysisService"> |
| 2316 <p> |
| 2317 An enumeration of the services provided by the analysis domain that |
| 2318 are related to a specific list of files. |
| 2319 </p> |
| 2320 <enum> |
| 2321 <value><code>FOLDING</code></value> |
| 2322 <value><code>HIGHLIGHTS</code></value> |
| 2323 <value><code>IMPLEMENTED</code></value> |
| 2324 <value> |
| 2325 <code>INVALIDATE</code> |
| 2326 <p> |
| 2327 This service is not currently implemented and will become a |
| 2328 GeneralAnalysisService in a future release. |
| 2329 </p> |
| 2330 </value> |
| 2331 <value><code>NAVIGATION</code></value> |
| 2332 <value><code>OCCURRENCES</code></value> |
| 2333 <value><code>OUTLINE</code></value> |
| 2334 <value><code>OVERRIDES</code></value> |
| 2335 </enum> |
| 2336 </type> |
| 2337 <type name="AnalysisStatus"> |
| 2338 <p> |
| 2339 An indication of the current state of analysis. |
| 2340 </p> |
| 2341 <object> |
| 2342 <field name="isAnalyzing"> |
| 2343 <ref>bool</ref> |
| 2344 <p>True if analysis is currently being performed.</p> |
| 2345 </field> |
| 2346 <field name="analysisTarget" optional="true"> |
| 2347 <ref>String</ref> |
| 2348 <p> |
| 2349 The name of the current target of analysis. This field is |
| 2350 omitted if analyzing is false. |
| 2351 </p> |
| 2352 </field> |
| 2353 </object> |
| 2354 </type> |
| 2355 <type name="CompletionId"> |
| 2356 <ref>String</ref> |
| 2357 <p> |
| 2358 An identifier used to associate completion results with a |
| 2359 completion request. |
| 2360 </p> |
| 2361 </type> |
| 2362 <type name="ContextData"> |
| 2363 <p> |
| 2364 Information about an analysis context. |
| 2365 </p> |
| 2366 <object> |
| 2367 <field name="name"> |
| 2368 <ref>String</ref> |
| 2369 <p> |
| 2370 The name of the context. |
| 2371 </p> |
| 2372 </field> |
| 2373 <field name="explicitFileCount"> |
| 2374 <ref>int</ref> |
| 2375 <p> |
| 2376 Explicitly analyzed files. |
| 2377 </p> |
| 2378 </field> |
| 2379 <field name="implicitFileCount"> |
| 2380 <ref>int</ref> |
| 2381 <p> |
| 2382 Implicitly analyzed files. |
| 2383 </p> |
| 2384 </field> |
| 2385 <field name="workItemQueueLength"> |
| 2386 <ref>int</ref> |
| 2387 <p> |
| 2388 The number of work items in the queue. |
| 2389 </p> |
| 2390 </field> |
| 2391 <field name="cacheEntryExceptions"> |
| 2392 <list> |
| 2393 <ref>String</ref> |
| 2394 </list> |
| 2395 <p> |
| 2396 Exceptions associated with cache entries. |
| 2397 </p> |
| 2398 </field> |
| 2399 </object> |
| 2400 </type> |
| 2401 <type name="ExecutableFile"> |
| 2402 <p> |
| 2403 A description of an executable file. |
| 2404 </p> |
| 2405 <object> |
| 2406 <field name="file"> |
| 2407 <ref>FilePath</ref> |
| 2408 <p> |
| 2409 The path of the executable file. |
| 2410 </p> |
| 2411 </field> |
| 2412 <field name="kind"> |
| 2413 <ref>ExecutableKind</ref> |
| 2414 <p> |
| 2415 The kind of the executable file. |
| 2416 </p> |
| 2417 </field> |
| 2418 </object> |
| 2419 </type> |
| 2420 <type name="ExecutableKind"> |
| 2421 <p> |
| 2422 An enumeration of the kinds of executable files. |
| 2423 </p> |
| 2424 <enum> |
| 2425 <value><code>CLIENT</code></value> |
| 2426 <value><code>EITHER</code></value> |
| 2427 <value><code>NOT_EXECUTABLE</code></value> |
| 2428 <value><code>SERVER</code></value> |
| 2429 </enum> |
| 2430 </type> |
| 2431 <type name="ExecutionContextId"> |
| 2432 <ref>String</ref> |
| 2433 <p> |
| 2434 The identifier for a execution context. |
| 2435 </p> |
| 2436 </type> |
| 2437 <type name="ExecutionService"> |
| 2438 <p> |
| 2439 An enumeration of the services provided by the execution |
| 2440 domain. |
| 2441 </p> |
| 2442 <enum> |
| 2443 <value><code>LAUNCH_DATA</code></value> |
| 2444 </enum> |
| 2445 </type> |
| 2446 <type name="FileKind"> |
| 2447 <p> |
| 2448 An enumeration of the kinds of files. |
| 2449 </p> |
| 2450 <enum> |
| 2451 <value><code>LIBRARY</code></value> |
| 2452 <value><code>PART</code></value> |
| 2453 </enum> |
| 2454 </type> |
| 2455 <type name="GeneralAnalysisService"> |
| 2456 <p> |
| 2457 An enumeration of the services provided by the analysis domain that are |
| 2458 general in nature (that is, are not specific to some list of files). |
| 2459 </p> |
| 2460 <enum> |
| 2461 <value><code>ANALYZED_FILES</code></value> |
| 2462 </enum> |
| 2463 </type> |
| 2464 <type name="HoverInformation"> |
| 2465 <p> |
| 2466 The hover information associated with a specific location. |
| 2467 </p> |
| 2468 <object> |
| 2469 <field name="offset"> |
| 2470 <ref>int</ref> |
| 2471 <p> |
| 2472 The offset of the range of characters that encompasses the |
| 2473 cursor position and has the same hover information as the |
| 2474 cursor position. |
| 2475 </p> |
| 2476 </field> |
| 2477 <field name="length"> |
| 2478 <ref>int</ref> |
| 2479 <p> |
| 2480 The length of the range of characters that encompasses the |
| 2481 cursor position and has the same hover information as the |
| 2482 cursor position. |
| 2483 </p> |
| 2484 </field> |
| 2485 <field name="containingLibraryPath" optional="true"> |
| 2486 <ref>String</ref> |
| 2487 <p> |
| 2488 The path to the defining compilation unit of the library |
| 2489 in which the referenced element is declared. This data is |
| 2490 omitted if there is no referenced element, or if the |
| 2491 element is declared inside an HTML file. |
| 2492 </p> |
| 2493 </field> |
| 2494 <field name="containingLibraryName" optional="true"> |
| 2495 <ref>String</ref> |
| 2496 <p> |
| 2497 The name of the library in which the referenced element is |
| 2498 declared. This data is omitted if there is no referenced |
| 2499 element, or if the element is declared inside an HTML |
| 2500 file. |
| 2501 </p> |
| 2502 </field> |
| 2503 <field name="containingClassDescription" optional="true"> |
| 2504 <ref>String</ref> |
| 2505 <p> |
| 2506 A human-readable description of the class declaring the element |
| 2507 being referenced. This data is omitted if there is no referenced |
| 2508 element, or if the element is not a class member. |
| 2509 </p> |
| 2510 </field> |
| 2511 <field name="dartdoc" optional="true"> |
| 2512 <ref>String</ref> |
| 2513 <p> |
| 2514 The dartdoc associated with the referenced element. Other |
| 2515 than the removal of the comment delimiters, including |
| 2516 leading asterisks in the case of a block comment, the |
| 2517 dartdoc is unprocessed markdown. This data is omitted if |
| 2518 there is no referenced element, or if the element has no |
| 2519 dartdoc. |
| 2520 </p> |
| 2521 </field> |
| 2522 <field name="elementDescription" optional="true"> |
| 2523 <ref>String</ref> |
| 2524 <p> |
| 2525 A human-readable description of the element being |
| 2526 referenced. This data is omitted if there is no referenced |
| 2527 element. |
| 2528 </p> |
| 2529 </field> |
| 2530 <field name="elementKind" optional="true"> |
| 2531 <ref>String</ref> |
| 2532 <p> |
| 2533 A human-readable description of the kind of element being |
| 2534 referenced (such as "class" or "function type |
| 2535 alias"). This data is omitted if there is no referenced |
| 2536 element. |
| 2537 </p> |
| 2538 </field> |
| 2539 <field name="isDeprecated" optional="true"> |
| 2540 <ref>bool</ref> |
| 2541 <p> |
| 2542 True if the referenced element is deprecated. |
| 2543 </p> |
| 2544 </field> |
| 2545 <field name="parameter" optional="true"> |
| 2546 <ref>String</ref> |
| 2547 <p> |
| 2548 A human-readable description of the parameter |
| 2549 corresponding to the expression being hovered over. This |
| 2550 data is omitted if the location is not in an argument to a |
| 2551 function. |
| 2552 </p> |
| 2553 </field> |
| 2554 <field name="propagatedType" optional="true"> |
| 2555 <ref>String</ref> |
| 2556 <p> |
| 2557 The name of the propagated type of the expression. This |
| 2558 data is omitted if the location does not correspond to an |
| 2559 expression or if there is no propagated type information. |
| 2560 </p> |
| 2561 </field> |
| 2562 <field name="staticType" optional="true"> |
| 2563 <ref>String</ref> |
| 2564 <p> |
| 2565 The name of the static type of the expression. This data |
| 2566 is omitted if the location does not correspond to an |
| 2567 expression. |
| 2568 </p> |
| 2569 </field> |
| 2570 </object> |
| 2571 </type> |
| 2572 <type name="ImplementedClass"> |
| 2573 <p> |
| 2574 A description of a class that is implemented or extended. |
| 2575 </p> |
| 2576 <object> |
| 2577 <field name="offset"> |
| 2578 <ref>int</ref> |
| 2579 <p> |
| 2580 The offset of the name of the implemented class. |
| 2581 </p> |
| 2582 </field> |
| 2583 <field name="length"> |
| 2584 <ref>int</ref> |
| 2585 <p> |
| 2586 The length of the name of the implemented class. |
| 2587 </p> |
| 2588 </field> |
| 2589 </object> |
| 2590 </type> |
| 2591 <type name="ImplementedMember"> |
| 2592 <p> |
| 2593 A description of a class member that is implemented or overridden. |
| 2594 </p> |
| 2595 <object> |
| 2596 <field name="offset"> |
| 2597 <ref>int</ref> |
| 2598 <p> |
| 2599 The offset of the name of the implemented member. |
| 2600 </p> |
| 2601 </field> |
| 2602 <field name="length"> |
| 2603 <ref>int</ref> |
| 2604 <p> |
| 2605 The length of the name of the implemented member. |
| 2606 </p> |
| 2607 </field> |
| 2608 </object> |
| 2609 </type> |
| 2610 <type name="Override"> |
| 2611 <p> |
| 2612 A description of a member that overrides an inherited member. |
| 2613 </p> |
| 2614 <object> |
| 2615 <field name="offset"> |
| 2616 <ref>int</ref> |
| 2617 <p> |
| 2618 The offset of the name of the overriding member. |
| 2619 </p> |
| 2620 </field> |
| 2621 <field name="length"> |
| 2622 <ref>int</ref> |
| 2623 <p> |
| 2624 The length of the name of the overriding member. |
| 2625 </p> |
| 2626 </field> |
| 2627 <field name="superclassMember" optional="true"> |
| 2628 <ref>OverriddenMember</ref> |
| 2629 <p> |
| 2630 The member inherited from a superclass that is overridden |
| 2631 by the overriding member. The field is omitted if there is |
| 2632 no superclass member, in which case there must be at least |
| 2633 one interface member. |
| 2634 </p> |
| 2635 </field> |
| 2636 <field name="interfaceMembers" optional="true"> |
| 2637 <list> |
| 2638 <ref>OverriddenMember</ref> |
| 2639 </list> |
| 2640 <p> |
| 2641 The members inherited from interfaces that are overridden |
| 2642 by the overriding member. The field is omitted if there |
| 2643 are no interface members, in which case there must be a |
| 2644 superclass member. |
| 2645 </p> |
| 2646 </field> |
| 2647 </object> |
| 2648 </type> |
| 2649 <type name="OverriddenMember"> |
| 2650 <p> |
| 2651 A description of a member that is being overridden. |
| 2652 </p> |
| 2653 <object> |
| 2654 <field name="element"> |
| 2655 <ref>Element</ref> |
| 2656 <p> |
| 2657 The element that is being overridden. |
| 2658 </p> |
| 2659 </field> |
| 2660 <field name="className"> |
| 2661 <ref>String</ref> |
| 2662 <p> |
| 2663 The name of the class in which the member is defined. |
| 2664 </p> |
| 2665 </field> |
| 2666 </object> |
| 2667 </type> |
| 2668 <type name="PubStatus"> |
| 2669 <p> |
| 2670 An indication of the current state of pub execution. |
| 2671 </p> |
| 2672 <object> |
| 2673 <field name="isListingPackageDirs"> |
| 2674 <ref>bool</ref> |
| 2675 <p> |
| 2676 True if the server is currently running pub to produce a list of |
| 2677 package directories. |
| 2678 </p> |
| 2679 </field> |
| 2680 </object> |
| 2681 </type> |
| 2682 <type name="RefactoringFeedback"> |
| 2683 <p> |
| 2684 An abstract superclass of all refactoring feedbacks. |
| 2685 </p> |
| 2686 <object> |
| 2687 </object> |
| 2688 </type> |
| 2689 <type name="RefactoringOptions"> |
| 2690 <p> |
| 2691 An abstract superclass of all refactoring options. |
| 2692 </p> |
| 2693 <object> |
| 2694 </object> |
| 2695 </type> |
| 2696 <type name="RequestError"> |
| 2697 <p> |
| 2698 An indication of a problem with the execution of the server, |
| 2699 typically in response to a request. |
| 2700 </p> |
| 2701 <object> |
| 2702 <field name="code"> |
| 2703 <ref>RequestErrorCode</ref> |
| 2704 <p> |
| 2705 A code that uniquely identifies the error that occurred. |
| 2706 </p> |
| 2707 </field> |
| 2708 <field name="message"> |
| 2709 <ref>String</ref> |
| 2710 <p> |
| 2711 A short description of the error. |
| 2712 </p> |
| 2713 </field> |
| 2714 <field name="stackTrace" optional="true"> |
| 2715 <ref>String</ref> |
| 2716 <p> |
| 2717 The stack trace associated with processing the request, |
| 2718 used for debugging the server. |
| 2719 </p> |
| 2720 </field> |
| 2721 </object> |
| 2722 </type> |
| 2723 <type name="RequestErrorCode"> |
| 2724 <p> |
| 2725 An enumeration of the types of errors that can occur in the |
| 2726 execution of the server. |
| 2727 </p> |
| 2728 <enum> |
| 2729 <value> |
| 2730 <code>CONTENT_MODIFIED</code> |
| 2731 <p> |
| 2732 An "analysis.getErrors" or "analysis.getNavigation" request could |
| 2733 not be satisfied because the content of the file changed before |
| 2734 the requested results could be computed. |
| 2735 </p> |
| 2736 </value> |
| 2737 <value> |
| 2738 <code>DEBUG_PORT_COULD_NOT_BE_OPENED</code> |
| 2739 <p> |
| 2740 The server was unable to open a port for the diagnostic server. |
| 2741 </p> |
| 2742 </value> |
| 2743 <value> |
| 2744 <code>FILE_NOT_ANALYZED</code> |
| 2745 <p> |
| 2746 A request specified a FilePath which does not match a file in |
| 2747 an analysis root, or the requested operation is not available |
| 2748 for the file. |
| 2749 </p> |
| 2750 </value> |
| 2751 <value> |
| 2752 <code>FORMAT_INVALID_FILE</code> |
| 2753 <p> |
| 2754 An "edit.format" request specified a FilePath |
| 2755 which does not match a Dart file in an analysis root. |
| 2756 </p> |
| 2757 </value> |
| 2758 <value> |
| 2759 <code>FORMAT_WITH_ERRORS</code> |
| 2760 <p> |
| 2761 An "edit.format" request specified a file that contains syntax |
2218 errors. | 2762 errors. |
2219 </p> | 2763 </p> |
2220 <enum> | 2764 </value> |
2221 <value><code>INFO</code></value> | 2765 <value> |
2222 <value><code>WARNING</code></value> | 2766 <code>GET_ERRORS_INVALID_FILE</code> |
2223 <value><code>ERROR</code></value> | 2767 <p> |
2224 </enum> | 2768 An "analysis.getErrors" request specified a FilePath |
2225 </type> | 2769 which does not match a file currently subject to |
2226 <type name="AnalysisErrorType"> | 2770 analysis. |
2227 <p> | 2771 </p> |
2228 An enumeration of the possible types of analysis errors. | 2772 </value> |
2229 </p> | 2773 <value> |
2230 <enum> | 2774 <code>GET_NAVIGATION_INVALID_FILE</code> |
2231 <value><code>CHECKED_MODE_COMPILE_TIME_ERROR</code></value> | 2775 <p> |
2232 <value><code>COMPILE_TIME_ERROR</code></value> | 2776 An "analysis.getNavigation" request specified a FilePath |
2233 <value><code>HINT</code></value> | 2777 which does not match a file currently subject to |
2234 <value><code>LINT</code></value> | 2778 analysis. |
2235 <value><code>STATIC_TYPE_WARNING</code></value> | 2779 </p> |
2236 <value><code>STATIC_WARNING</code></value> | 2780 </value> |
2237 <value><code>SYNTACTIC_ERROR</code></value> | 2781 <value> |
2238 <value><code>TODO</code></value> | 2782 <code>GET_REACHABLE_SOURCES_INVALID_FILE</code> |
2239 </enum> | 2783 <p> |
2240 </type> | 2784 An "analysis.getReachableSources" request specified a FilePath |
2241 <type name="AnalysisOptions" deprecated="true"> | 2785 which does not match a file currently subject to |
2242 <p><b>Deprecated:</b> the only reference to this type has been | 2786 analysis. |
2243 deprecated.</p> | 2787 </p> |
2244 <p> | 2788 </value> |
2245 A set of options controlling what kind of analysis is to be | 2789 <value> |
2246 performed. If the value of a field is omitted the value of the | 2790 <code>INVALID_ANALYSIS_ROOT</code> |
2247 option will not be changed. | 2791 <p> |
2248 </p> | 2792 A path passed as an argument to a request (such as |
2249 <object> | 2793 analysis.reanalyze) is required to be an analysis root, but isn't. |
2250 <field name="enableAsync" optional="true" deprecated="true"> | 2794 </p> |
2251 <ref>bool</ref> | 2795 </value> |
2252 <p><b>Deprecated:</b> this feature is always enabled.</p> | 2796 <value> |
2253 <p> | 2797 <code>INVALID_EXECUTION_CONTEXT</code> |
2254 True if the client wants to enable support for the | 2798 <p> |
2255 proposed async feature. | 2799 The context root used to create an execution context does not |
2256 </p> | 2800 exist. |
2257 </field> | 2801 </p> |
2258 <field name="enableDeferredLoading" optional="true" deprecated="true"> | 2802 </value> |
2259 <ref>bool</ref> | 2803 <value> |
2260 <p><b>Deprecated:</b> this feature is always enabled.</p> | 2804 <code>INVALID_FILE_PATH_FORMAT</code> |
2261 <p> | 2805 <p> |
2262 True if the client wants to enable support for the | 2806 The format of the given file path is invalid, e.g. is not |
2263 proposed deferred loading feature. | 2807 absolute and normalized. |
2264 </p> | 2808 </p> |
2265 </field> | 2809 </value> |
2266 <field name="enableEnums" optional="true" deprecated="true"> | 2810 <value> |
2267 <ref>bool</ref> | 2811 <code>INVALID_OVERLAY_CHANGE</code> |
2268 <p><b>Deprecated:</b> this feature is always enabled.</p> | 2812 <p> |
2269 <p> | 2813 An "analysis.updateContent" request contained a |
2270 True if the client wants to enable support for the | 2814 ChangeContentOverlay object which can't be applied, due |
2271 proposed enum feature. | 2815 to an edit having an offset or length that is out of |
2272 </p> | 2816 range. |
2273 </field> | 2817 </p> |
2274 <field name="enableNullAwareOperators" optional="true" deprecated="tru
e"> | 2818 </value> |
2275 <ref>bool</ref> | 2819 <value> |
2276 <p><b>Deprecated:</b> this feature is always enabled.</p> | 2820 <code>INVALID_PARAMETER</code> |
2277 <p> | 2821 <p> |
2278 True if the client wants to enable support for the | 2822 One of the method parameters was invalid. |
2279 proposed "null aware operators" feature. | 2823 </p> |
2280 </p> | 2824 </value> |
2281 </field> | 2825 <value> |
2282 <field name="enableSuperMixins" optional="true"> | 2826 <code>INVALID_REQUEST</code> |
2283 <ref>bool</ref> | 2827 <p> |
2284 <p> | 2828 A malformed request was received. |
2285 True if the client wants to enable support for the | 2829 </p> |
2286 proposed "less restricted mixins" proposal (DEP 34). | 2830 </value> |
2287 </p> | 2831 <value> |
2288 </field> | 2832 <code>ORGANIZE_DIRECTIVES_ERROR</code> |
2289 <field name="generateDart2jsHints" optional="true"> | 2833 <p> |
2290 <ref>bool</ref> | 2834 An "edit.organizeDirectives" request specified a Dart file that |
2291 <p> | 2835 cannot be analyzed. The reason is described in the message. |
2292 True if hints that are specific to dart2js should be | 2836 </p> |
2293 generated. This option is ignored if generateHints is false. | 2837 </value> |
2294 </p> | 2838 <value> |
2295 </field> | 2839 <code>REFACTORING_REQUEST_CANCELLED</code> |
2296 <field name="generateHints" optional="true"> | 2840 <p> |
2297 <ref>bool</ref> | 2841 Another refactoring request was received during processing of |
2298 <p> | 2842 this one. |
2299 True if hints should be generated as part of generating | 2843 </p> |
2300 errors and warnings. | 2844 </value> |
2301 </p> | 2845 <value> |
2302 </field> | 2846 <code>SERVER_ALREADY_STARTED</code> |
2303 <field name="generateLints" optional="true"> | 2847 <p> |
2304 <ref>bool</ref> | 2848 The analysis server has already been started (and hence |
2305 <p> | 2849 won't accept new connections). |
2306 True if lints should be generated as part of generating | 2850 </p> |
2307 errors and warnings. | 2851 <p> |
2308 </p> | 2852 This error is included for future expansion; at present |
2309 </field> | 2853 the analysis server can only speak to one client at a |
2310 </object> | 2854 time so this error will never occur. |
2311 </type> | 2855 </p> |
2312 <type name="AnalysisService"> | 2856 </value> |
2313 <p> | 2857 <value> |
2314 An enumeration of the services provided by the analysis domain that | 2858 <code>SERVER_ERROR</code> |
2315 are related to a specific list of files. | 2859 <p> |
2316 </p> | 2860 An internal error occurred in the analysis server. |
2317 <enum> | 2861 Also see the server.error notification. |
2318 <value><code>FOLDING</code></value> | 2862 </p> |
2319 <value><code>HIGHLIGHTS</code></value> | 2863 </value> |
2320 <value><code>IMPLEMENTED</code></value> | 2864 <value> |
2321 <value> | 2865 <code>SORT_MEMBERS_INVALID_FILE</code> |
2322 <code>INVALIDATE</code> | 2866 <p> |
2323 <p> | 2867 An "edit.sortMembers" request specified a FilePath |
2324 This service is not currently implemented and will become a | 2868 which does not match a Dart file in an analysis root. |
2325 GeneralAnalysisService in a future release. | 2869 </p> |
2326 </p> | 2870 </value> |
2327 </value> | 2871 <value> |
2328 <value><code>NAVIGATION</code></value> | 2872 <code>SORT_MEMBERS_PARSE_ERRORS</code> |
2329 <value><code>OCCURRENCES</code></value> | 2873 <p> |
2330 <value><code>OUTLINE</code></value> | 2874 An "edit.sortMembers" request specified a Dart file that has |
2331 <value><code>OVERRIDES</code></value> | 2875 scan or parse errors. |
2332 </enum> | 2876 </p> |
2333 </type> | 2877 </value> |
2334 <type name="AnalysisStatus"> | 2878 <value> |
2335 <p> | 2879 <code>UNANALYZED_PRIORITY_FILES</code> |
2336 An indication of the current state of analysis. | 2880 <p> |
2337 </p> | 2881 An "analysis.setPriorityFiles" request includes one or |
2338 <object> | 2882 more files that are not being analyzed. |
2339 <field name="isAnalyzing"> | 2883 </p> |
2340 <ref>bool</ref> | 2884 <p> |
2341 <p>True if analysis is currently being performed.</p> | 2885 This is a legacy error; it will be removed before the |
2342 </field> | 2886 API reaches version 1.0. |
2343 <field name="analysisTarget" optional="true"> | 2887 </p> |
2344 <ref>String</ref> | 2888 <!-- TODO(paulberry): remove this error and the code that |
2345 <p> | |
2346 The name of the current target of analysis. This field is | |
2347 omitted if analyzing is false. | |
2348 </p> | |
2349 </field> | |
2350 </object> | |
2351 </type> | |
2352 <type name="ChangeContentOverlay"> | |
2353 <p> | |
2354 A directive to modify an existing file content overlay. One or more | |
2355 ranges of text are deleted from the old file content overlay and | |
2356 replaced with new text. | |
2357 </p> | |
2358 <p> | |
2359 The edits are applied in the order in which they occur in the list. | |
2360 This means that the offset of each edit must be correct under the | |
2361 assumption that all previous edits have been applied. | |
2362 </p> | |
2363 <p> | |
2364 It is an error to use this overlay on a file that does not yet have | |
2365 a file content overlay or that has had its overlay removed via | |
2366 <a href="#type_RemoveContentOverlay">RemoveContentOverlay</a>. | |
2367 </p> | |
2368 <p> | |
2369 If any of the edits cannot be applied due to its offset or | |
2370 length being out of range, an INVALID_OVERLAY_CHANGE error | |
2371 will be reported. | |
2372 </p> | |
2373 <object> | |
2374 <field name="type" value="change"><ref>String</ref></field> | |
2375 <field name="edits"> | |
2376 <list><ref>SourceEdit</ref></list> | |
2377 <p> | |
2378 The edits to be applied to the file. | |
2379 </p> | |
2380 </field> | |
2381 </object> | |
2382 </type> | |
2383 <type name="CompletionId"> | |
2384 <ref>String</ref> | |
2385 <p> | |
2386 An identifier used to associate completion results with a | |
2387 completion request. | |
2388 </p> | |
2389 </type> | |
2390 <type name="CompletionSuggestion"> | |
2391 <p> | |
2392 A suggestion for how to complete partially entered text. Many | |
2393 of the fields are optional, depending on the kind of element | |
2394 being suggested. | |
2395 </p> | |
2396 <object> | |
2397 <field name="kind"> | |
2398 <ref>CompletionSuggestionKind</ref> | |
2399 <p> | |
2400 The kind of element being suggested. | |
2401 </p> | |
2402 </field> | |
2403 <field name="relevance"> | |
2404 <ref>int</ref> | |
2405 <p> | |
2406 The relevance of this completion suggestion | |
2407 where a higher number indicates a higher relevance. | |
2408 </p> | |
2409 </field> | |
2410 <field name="completion"> | |
2411 <ref>String</ref> | |
2412 <p> | |
2413 The identifier to be inserted if the suggestion is | |
2414 selected. If the suggestion is for a method or function, | |
2415 the client might want to additionally insert a template | |
2416 for the parameters. The information required in order to | |
2417 do so is contained in other fields. | |
2418 </p> | |
2419 </field> | |
2420 <field name="selectionOffset"> | |
2421 <ref>int</ref> | |
2422 <p> | |
2423 The offset, relative to the beginning of the completion, | |
2424 of where the selection should be placed after insertion. | |
2425 </p> | |
2426 </field> | |
2427 <field name="selectionLength"> | |
2428 <ref>int</ref> | |
2429 <p> | |
2430 The number of characters that should be selected after | |
2431 insertion. | |
2432 </p> | |
2433 </field> | |
2434 <field name="isDeprecated"> | |
2435 <ref>bool</ref> | |
2436 <p> | |
2437 True if the suggested element is deprecated. | |
2438 </p> | |
2439 </field> | |
2440 <field name="isPotential"> | |
2441 <ref>bool</ref> | |
2442 <p> | |
2443 True if the element is not known to be valid for the | |
2444 target. This happens if the type of the target is dynamic. | |
2445 </p> | |
2446 </field> | |
2447 <field name="docSummary" optional="true"> | |
2448 <ref>String</ref> | |
2449 <p> | |
2450 An abbreviated version of the Dartdoc associated with the | |
2451 element being suggested, This field is omitted if there is | |
2452 no Dartdoc associated with the element. | |
2453 </p> | |
2454 </field> | |
2455 <field name="docComplete" optional="true"> | |
2456 <ref>String</ref> | |
2457 <p> | |
2458 The Dartdoc associated with the element being suggested, | |
2459 This field is omitted if there is no Dartdoc associated | |
2460 with the element. | |
2461 </p> | |
2462 </field> | |
2463 <field name="declaringType" optional="true"> | |
2464 <ref>String</ref> | |
2465 <p> | |
2466 The class that declares the element being suggested. This | |
2467 field is omitted if the suggested element is not a member | |
2468 of a class. | |
2469 </p> | |
2470 </field> | |
2471 <field name="defaultArgumentListString" optional="true"> | |
2472 <ref>String</ref> | |
2473 <p> | |
2474 A default String for use in generating argument list | |
2475 source contents on the client side. | |
2476 </p> | |
2477 </field> | |
2478 <field name="defaultArgumentListTextRanges" optional="true"> | |
2479 <list><ref>int</ref></list> | |
2480 <p> | |
2481 Pairs of offsets and lengths describing 'defaultArgumentListString
' | |
2482 text ranges suitable for use by clients to set up linked edits of | |
2483 default argument source contents. For example, given an argument | |
2484 list string 'x, y', the corresponding text range [0, 1, 3, 1], | |
2485 indicates two text ranges of length 1, starting at offsets 0 and 3
. | |
2486 Clients can use these ranges to treat the 'x' and 'y' values | |
2487 specially for linked edits. | |
2488 </p> | |
2489 </field> | |
2490 <field name="element" optional="true"> | |
2491 <ref>Element</ref> | |
2492 <p> | |
2493 Information about the element reference being suggested. | |
2494 </p> | |
2495 </field> | |
2496 <field name="returnType" optional="true"> | |
2497 <ref>String</ref> | |
2498 <p> | |
2499 The return type of the getter, function or method | |
2500 or the type of the field being suggested. | |
2501 This field is omitted if the suggested element | |
2502 is not a getter, function or method. | |
2503 </p> | |
2504 </field> | |
2505 <field name="parameterNames" optional="true"> | |
2506 <list><ref>String</ref></list> | |
2507 <p> | |
2508 The names of the parameters of the function or method | |
2509 being suggested. This field is omitted if the suggested | |
2510 element is not a setter, function or method. | |
2511 </p> | |
2512 </field> | |
2513 <field name="parameterTypes" optional="true"> | |
2514 <list><ref>String</ref></list> | |
2515 <p> | |
2516 The types of the parameters of the function or method | |
2517 being suggested. This field is omitted if the | |
2518 parameterNames field is omitted. | |
2519 </p> | |
2520 </field> | |
2521 <field name="requiredParameterCount" optional="true"> | |
2522 <ref>int</ref> | |
2523 <p> | |
2524 The number of required parameters for the function or | |
2525 method being suggested. This field is omitted if the | |
2526 parameterNames field is omitted. | |
2527 </p> | |
2528 </field> | |
2529 <field name="hasNamedParameters" optional="true"> | |
2530 <ref>bool</ref> | |
2531 <p> | |
2532 True if the function or method being suggested has at | |
2533 least one named parameter. This field is omitted if the | |
2534 parameterNames field is omitted. | |
2535 </p> | |
2536 </field> | |
2537 <field name="parameterName" optional="true"> | |
2538 <ref>String</ref> | |
2539 <p> | |
2540 The name of the optional parameter being suggested. This | |
2541 field is omitted if the suggestion is not the addition of | |
2542 an optional argument within an argument list. | |
2543 </p> | |
2544 </field> | |
2545 <field name="parameterType" optional="true"> | |
2546 <ref>String</ref> | |
2547 <p> | |
2548 The type of the options parameter being suggested. This | |
2549 field is omitted if the parameterName field is omitted. | |
2550 </p> | |
2551 </field> | |
2552 <field name="importUri" optional="true"> | |
2553 <ref>String</ref> | |
2554 <p> | |
2555 The import to be added if the suggestion is out of scope | |
2556 and needs an import to be added to be in scope. | |
2557 </p> | |
2558 </field> | |
2559 </object> | |
2560 </type> | |
2561 <type name="CompletionSuggestionKind"> | |
2562 <p> | |
2563 An enumeration of the kinds of elements that can be included | |
2564 in a completion suggestion. | |
2565 </p> | |
2566 <enum> | |
2567 <value> | |
2568 <code>ARGUMENT_LIST</code> | |
2569 <p> | |
2570 A list of arguments for the method or function that is being invok
ed. | |
2571 For this suggestion kind, the completion field is a textual repres
entation | |
2572 of the invocation and the parameterNames, parameterTypes, and requ
iredParameterCount | |
2573 attributes are defined. | |
2574 </p> | |
2575 </value> | |
2576 <value><code>IMPORT</code></value> | |
2577 <value> | |
2578 <code>IDENTIFIER</code> | |
2579 <p> | |
2580 The element identifier should be inserted at the completion locati
on. | |
2581 For example "someMethod" in import 'myLib.dart' show someMethod; . | |
2582 For suggestions of this kind, the element attribute is defined | |
2583 and the completion field is the element's identifier. | |
2584 </p> | |
2585 </value> | |
2586 <value> | |
2587 <code>INVOCATION</code> | |
2588 <p> | |
2589 The element is being invoked at the completion location. | |
2590 For example, "someMethod" in x.someMethod(); . | |
2591 For suggestions of this kind, the element attribute is defined | |
2592 and the completion field is the element's identifier. | |
2593 </p> | |
2594 </value> | |
2595 <value> | |
2596 <code>KEYWORD</code> | |
2597 <p> | |
2598 A keyword is being suggested. | |
2599 For suggestions of this kind, the completion is the keyword. | |
2600 </p> | |
2601 </value> | |
2602 <value> | |
2603 <code>NAMED_ARGUMENT</code> | |
2604 <p> | |
2605 A named argument for the current callsite is being suggested. | |
2606 For suggestions of this kind, the completion is | |
2607 the named argument identifier including a trailing ':' and space. | |
2608 </p> | |
2609 </value> | |
2610 <value><code>OPTIONAL_ARGUMENT</code></value> | |
2611 <value><code>PARAMETER</code></value> | |
2612 </enum> | |
2613 </type> | |
2614 <type name="ContextData"> | |
2615 <p> | |
2616 Information about an analysis context. | |
2617 </p> | |
2618 <object> | |
2619 <field name="name"> | |
2620 <ref>String</ref> | |
2621 <p> | |
2622 The name of the context. | |
2623 </p> | |
2624 </field> | |
2625 <field name="explicitFileCount"> | |
2626 <ref>int</ref> | |
2627 <p> | |
2628 Explicitly analyzed files. | |
2629 </p> | |
2630 </field> | |
2631 <field name="implicitFileCount"> | |
2632 <ref>int</ref> | |
2633 <p> | |
2634 Implicitly analyzed files. | |
2635 </p> | |
2636 </field> | |
2637 <field name="workItemQueueLength"> | |
2638 <ref>int</ref> | |
2639 <p> | |
2640 The number of work items in the queue. | |
2641 </p> | |
2642 </field> | |
2643 <field name="cacheEntryExceptions"> | |
2644 <list><ref>String</ref></list> | |
2645 <p> | |
2646 Exceptions associated with cache entries. | |
2647 </p> | |
2648 </field> | |
2649 </object> | |
2650 </type> | |
2651 <type name="Element"> | |
2652 <p> | |
2653 Information about an element (something that can be declared | |
2654 in code). | |
2655 </p> | |
2656 <object> | |
2657 <field name="kind"> | |
2658 <ref>ElementKind</ref> | |
2659 <p> | |
2660 The kind of the element. | |
2661 </p> | |
2662 </field> | |
2663 <field name="name"> | |
2664 <ref>String</ref> | |
2665 <p> | |
2666 The name of the element. This is typically used as the | |
2667 label in the outline. | |
2668 </p> | |
2669 </field> | |
2670 <field name="location" optional="true"> | |
2671 <ref>Location</ref> | |
2672 <p> | |
2673 The location of the name in the declaration of the | |
2674 element. | |
2675 </p> | |
2676 </field> | |
2677 <field name="flags"> | |
2678 <ref>int</ref> | |
2679 <p> | |
2680 A bit-map containing the following flags: | |
2681 </p> | |
2682 <ul> | |
2683 <li>0x01 - set if the element is explicitly or implicitly abstract
</li> | |
2684 <li>0x02 - set if the element was declared to be ‘const’</li> | |
2685 <li>0x04 - set if the element was declared to be ‘final’</li> | |
2686 <li>0x08 - set if the element is a static member of a class or is
a top-level function or field</li> | |
2687 <li>0x10 - set if the element is private</li> | |
2688 <li>0x20 - set if the element is deprecated</li> | |
2689 </ul> | |
2690 </field> | |
2691 <field name="parameters" optional="true"> | |
2692 <ref>String</ref> | |
2693 <p> | |
2694 The parameter list for the element. If the element is not | |
2695 a method or function this field will not be defined. If | |
2696 the element doesn't have parameters (e.g. getter), this field | |
2697 will not be defined. If the element has zero parameters, this | |
2698 field will have a value of "()". | |
2699 </p> | |
2700 </field> | |
2701 <field name="returnType" optional="true"> | |
2702 <ref>String</ref> | |
2703 <p> | |
2704 The return type of the element. If the element is not a | |
2705 method or function this field will not be defined. If the | |
2706 element does not have a declared return type, this field | |
2707 will contain an empty string. | |
2708 </p> | |
2709 </field> | |
2710 <field name="typeParameters" optional="true"> | |
2711 <ref>String</ref> | |
2712 <p> | |
2713 The type parameter list for the element. If the element doesn't | |
2714 have type parameters, this field will not be defined. | |
2715 </p> | |
2716 </field> | |
2717 </object> | |
2718 </type> | |
2719 <type name="ElementKind"> | |
2720 <p> | |
2721 An enumeration of the kinds of elements. | |
2722 </p> | |
2723 <enum> | |
2724 <value><code>CLASS</code></value> | |
2725 <value><code>CLASS_TYPE_ALIAS</code></value> | |
2726 <value><code>COMPILATION_UNIT</code></value> | |
2727 <value><code>CONSTRUCTOR</code></value> | |
2728 <value><code>ENUM</code></value> | |
2729 <value><code>ENUM_CONSTANT</code></value> | |
2730 <value><code>FIELD</code></value> | |
2731 <value><code>FILE</code></value> | |
2732 <value><code>FUNCTION</code></value> | |
2733 <value><code>FUNCTION_TYPE_ALIAS</code></value> | |
2734 <value><code>GETTER</code></value> | |
2735 <value><code>LABEL</code></value> | |
2736 <value><code>LIBRARY</code></value> | |
2737 <value><code>LOCAL_VARIABLE</code></value> | |
2738 <value><code>METHOD</code></value> | |
2739 <value><code>PARAMETER</code></value> | |
2740 <value><code>PREFIX</code></value> | |
2741 <value><code>SETTER</code></value> | |
2742 <value><code>TOP_LEVEL_VARIABLE</code></value> | |
2743 <value><code>TYPE_PARAMETER</code></value> | |
2744 <value deprecated="true"> | |
2745 <code>UNIT_TEST_GROUP</code> | |
2746 <p><b>Deprecated:</b> support for tests was removed.</p> | |
2747 </value> | |
2748 <value deprecated="true"> | |
2749 <code>UNIT_TEST_TEST</code> | |
2750 <p><b>Deprecated:</b> support for tests was removed.</p> | |
2751 </value> | |
2752 <value><code>UNKNOWN</code></value> | |
2753 </enum> | |
2754 </type> | |
2755 <type name="ExecutableFile"> | |
2756 <p> | |
2757 A description of an executable file. | |
2758 </p> | |
2759 <object> | |
2760 <field name="file"> | |
2761 <ref>FilePath</ref> | |
2762 <p> | |
2763 The path of the executable file. | |
2764 </p> | |
2765 </field> | |
2766 <field name="kind"> | |
2767 <ref>ExecutableKind</ref> | |
2768 <p> | |
2769 The kind of the executable file. | |
2770 </p> | |
2771 </field> | |
2772 </object> | |
2773 </type> | |
2774 <type name="ExecutableKind"> | |
2775 <p> | |
2776 An enumeration of the kinds of executable files. | |
2777 </p> | |
2778 <enum> | |
2779 <value><code>CLIENT</code></value> | |
2780 <value><code>EITHER</code></value> | |
2781 <value><code>NOT_EXECUTABLE</code></value> | |
2782 <value><code>SERVER</code></value> | |
2783 </enum> | |
2784 </type> | |
2785 <type name="ExecutionContextId"> | |
2786 <ref>String</ref> | |
2787 <p> | |
2788 The identifier for a execution context. | |
2789 </p> | |
2790 </type> | |
2791 <type name="ExecutionService"> | |
2792 <p> | |
2793 An enumeration of the services provided by the execution | |
2794 domain. | |
2795 </p> | |
2796 <enum> | |
2797 <value><code>LAUNCH_DATA</code></value> | |
2798 </enum> | |
2799 </type> | |
2800 <type name="FileKind"> | |
2801 <p> | |
2802 An enumeration of the kinds of files. | |
2803 </p> | |
2804 <enum> | |
2805 <value><code>LIBRARY</code></value> | |
2806 <value><code>PART</code></value> | |
2807 </enum> | |
2808 </type> | |
2809 <type name="FilePath"> | |
2810 <ref>String</ref> | |
2811 <p> | |
2812 The absolute, normalized path of a file. | |
2813 </p> | |
2814 <p> | |
2815 If the format of a file path in a request is not valid, e.g. the | |
2816 path is not absolute or is not normalized, then an error of type | |
2817 <tt>INVALID_FILE_PATH_FORMAT</tt> will be generated. | |
2818 </p> | |
2819 </type> | |
2820 <type name="FoldingKind"> | |
2821 <p> | |
2822 An enumeration of the kinds of folding regions. | |
2823 </p> | |
2824 <enum> | |
2825 <value><code>COMMENT</code></value> | |
2826 <value><code>CLASS_MEMBER</code></value> | |
2827 <value><code>DIRECTIVES</code></value> | |
2828 <value><code>DOCUMENTATION_COMMENT</code></value> | |
2829 <value><code>TOP_LEVEL_DECLARATION</code></value> | |
2830 </enum> | |
2831 </type> | |
2832 <type name="FoldingRegion"> | |
2833 <p> | |
2834 A description of a region that can be folded. | |
2835 </p> | |
2836 <object> | |
2837 <field name="kind"> | |
2838 <ref>FoldingKind</ref> | |
2839 <p> | |
2840 The kind of the region. | |
2841 </p> | |
2842 </field> | |
2843 <field name="offset"> | |
2844 <ref>int</ref> | |
2845 <p> | |
2846 The offset of the region to be folded. | |
2847 </p> | |
2848 </field> | |
2849 <field name="length"> | |
2850 <ref>int</ref> | |
2851 <p> | |
2852 The length of the region to be folded. | |
2853 </p> | |
2854 </field> | |
2855 </object> | |
2856 </type> | |
2857 <type name="GeneralAnalysisService"> | |
2858 <p> | |
2859 An enumeration of the services provided by the analysis domain that ar
e | |
2860 general in nature (that is, are not specific to some list of files). | |
2861 </p> | |
2862 <enum> | |
2863 <value><code>ANALYZED_FILES</code></value> | |
2864 </enum> | |
2865 </type> | |
2866 <type name="HighlightRegion"> | |
2867 <p> | |
2868 A description of a region that could have special highlighting | |
2869 associated with it. | |
2870 </p> | |
2871 <object> | |
2872 <field name="type"> | |
2873 <ref>HighlightRegionType</ref> | |
2874 <p> | |
2875 The type of highlight associated with the region. | |
2876 </p> | |
2877 </field> | |
2878 <field name="offset"> | |
2879 <ref>int</ref> | |
2880 <p> | |
2881 The offset of the region to be highlighted. | |
2882 </p> | |
2883 </field> | |
2884 <field name="length"> | |
2885 <ref>int</ref> | |
2886 <p> | |
2887 The length of the region to be highlighted. | |
2888 </p> | |
2889 </field> | |
2890 </object> | |
2891 </type> | |
2892 <type name="HighlightRegionType"> | |
2893 <p> | |
2894 An enumeration of the kinds of highlighting that can be | |
2895 applied to files. | |
2896 </p> | |
2897 <enum> | |
2898 <value><code>ANNOTATION</code></value> | |
2899 <value><code>BUILT_IN</code></value> | |
2900 <value><code>CLASS</code></value> | |
2901 <value><code>COMMENT_BLOCK</code></value> | |
2902 <value><code>COMMENT_DOCUMENTATION</code></value> | |
2903 <value><code>COMMENT_END_OF_LINE</code></value> | |
2904 <value><code>CONSTRUCTOR</code></value> | |
2905 <value><code>DIRECTIVE</code></value> | |
2906 <value> | |
2907 <code>DYNAMIC_TYPE</code> | |
2908 <p>Only for version 1 of highlight.</p> | |
2909 </value> | |
2910 <value> | |
2911 <code>DYNAMIC_LOCAL_VARIABLE_DECLARATION</code> | |
2912 <p>Only for version 2 of highlight.</p> | |
2913 </value> | |
2914 <value> | |
2915 <code>DYNAMIC_LOCAL_VARIABLE_REFERENCE</code> | |
2916 <p>Only for version 2 of highlight.</p> | |
2917 </value> | |
2918 <value> | |
2919 <code>DYNAMIC_PARAMETER_DECLARATION</code> | |
2920 <p>Only for version 2 of highlight.</p> | |
2921 </value> | |
2922 <value> | |
2923 <code>DYNAMIC_PARAMETER_REFERENCE</code> | |
2924 <p>Only for version 2 of highlight.</p> | |
2925 </value> | |
2926 <value><code>ENUM</code></value> | |
2927 <value><code>ENUM_CONSTANT</code></value> | |
2928 <value> | |
2929 <code>FIELD</code> | |
2930 <p>Only for version 1 of highlight.</p> | |
2931 </value> | |
2932 <value> | |
2933 <code>FIELD_STATIC</code> | |
2934 <p>Only for version 1 of highlight.</p> | |
2935 </value> | |
2936 <value> | |
2937 <code>FUNCTION</code> | |
2938 <p>Only for version 1 of highlight.</p> | |
2939 </value> | |
2940 <value> | |
2941 <code>FUNCTION_DECLARATION</code> | |
2942 <p>Only for version 1 of highlight.</p> | |
2943 </value> | |
2944 <value><code>FUNCTION_TYPE_ALIAS</code></value> | |
2945 <value> | |
2946 <code>GETTER_DECLARATION</code> | |
2947 <p>Only for version 1 of highlight.</p> | |
2948 </value> | |
2949 <value><code>IDENTIFIER_DEFAULT</code></value> | |
2950 <value><code>IMPORT_PREFIX</code></value> | |
2951 <value> | |
2952 <code>INSTANCE_FIELD_DECLARATION</code> | |
2953 <p>Only for version 2 of highlight.</p> | |
2954 </value> | |
2955 <value> | |
2956 <code>INSTANCE_FIELD_REFERENCE</code> | |
2957 <p>Only for version 2 of highlight.</p> | |
2958 </value> | |
2959 <value> | |
2960 <code>INSTANCE_GETTER_DECLARATION</code> | |
2961 <p>Only for version 2 of highlight.</p> | |
2962 </value> | |
2963 <value> | |
2964 <code>INSTANCE_GETTER_REFERENCE</code> | |
2965 <p>Only for version 2 of highlight.</p> | |
2966 </value> | |
2967 <value> | |
2968 <code>INSTANCE_METHOD_DECLARATION</code> | |
2969 <p>Only for version 2 of highlight.</p> | |
2970 </value> | |
2971 <value> | |
2972 <code>INSTANCE_METHOD_REFERENCE</code> | |
2973 <p>Only for version 2 of highlight.</p> | |
2974 </value> | |
2975 <value> | |
2976 <code>INSTANCE_SETTER_DECLARATION</code> | |
2977 <p>Only for version 2 of highlight.</p> | |
2978 </value> | |
2979 <value> | |
2980 <code>INSTANCE_SETTER_REFERENCE</code> | |
2981 <p>Only for version 2 of highlight.</p> | |
2982 </value> | |
2983 <value> | |
2984 <code>INVALID_STRING_ESCAPE</code> | |
2985 <p>Only for version 2 of highlight.</p> | |
2986 </value> | |
2987 <value><code>KEYWORD</code></value> | |
2988 <value><code>LABEL</code></value> | |
2989 <value> | |
2990 <code>LIBRARY_NAME</code> | |
2991 <p>Only for version 2 of highlight.</p> | |
2992 </value> | |
2993 <value><code>LITERAL_BOOLEAN</code></value> | |
2994 <value><code>LITERAL_DOUBLE</code></value> | |
2995 <value><code>LITERAL_INTEGER</code></value> | |
2996 <value><code>LITERAL_LIST</code></value> | |
2997 <value><code>LITERAL_MAP</code></value> | |
2998 <value><code>LITERAL_STRING</code></value> | |
2999 <value> | |
3000 <code>LOCAL_FUNCTION_DECLARATION</code> | |
3001 <p>Only for version 2 of highlight.</p> | |
3002 </value> | |
3003 <value> | |
3004 <code>LOCAL_FUNCTION_REFERENCE</code> | |
3005 <p>Only for version 2 of highlight.</p> | |
3006 </value> | |
3007 <value> | |
3008 <code>LOCAL_VARIABLE</code> | |
3009 <p>Only for version 1 of highlight.</p> | |
3010 </value> | |
3011 <value><code>LOCAL_VARIABLE_DECLARATION</code></value> | |
3012 <value> | |
3013 <code>LOCAL_VARIABLE_REFERENCE</code> | |
3014 <p>Only for version 2 of highlight.</p> | |
3015 </value> | |
3016 <value> | |
3017 <code>METHOD</code> | |
3018 <p>Only for version 1 of highlight.</p> | |
3019 </value> | |
3020 <value> | |
3021 <code>METHOD_DECLARATION</code> | |
3022 <p>Only for version 1 of highlight.</p> | |
3023 </value> | |
3024 <value> | |
3025 <code>METHOD_DECLARATION_STATIC</code> | |
3026 <p>Only for version 1 of highlight.</p> | |
3027 </value> | |
3028 <value> | |
3029 <code>METHOD_STATIC</code> | |
3030 <p>Only for version 1 of highlight.</p> | |
3031 </value> | |
3032 <value> | |
3033 <code>PARAMETER</code> | |
3034 <p>Only for version 1 of highlight.</p> | |
3035 </value> | |
3036 <value> | |
3037 <code>SETTER_DECLARATION</code> | |
3038 <p>Only for version 1 of highlight.</p> | |
3039 </value> | |
3040 <value> | |
3041 <code>TOP_LEVEL_VARIABLE</code> | |
3042 <p>Only for version 1 of highlight.</p> | |
3043 </value> | |
3044 <value> | |
3045 <code>PARAMETER_DECLARATION</code> | |
3046 <p>Only for version 2 of highlight.</p> | |
3047 </value> | |
3048 <value> | |
3049 <code>PARAMETER_REFERENCE</code> | |
3050 <p>Only for version 2 of highlight.</p> | |
3051 </value> | |
3052 <value> | |
3053 <code>STATIC_FIELD_DECLARATION</code> | |
3054 <p>Only for version 2 of highlight.</p> | |
3055 </value> | |
3056 <value> | |
3057 <code>STATIC_GETTER_DECLARATION</code> | |
3058 <p>Only for version 2 of highlight.</p> | |
3059 </value> | |
3060 <value> | |
3061 <code>STATIC_GETTER_REFERENCE</code> | |
3062 <p>Only for version 2 of highlight.</p> | |
3063 </value> | |
3064 <value> | |
3065 <code>STATIC_METHOD_DECLARATION</code> | |
3066 <p>Only for version 2 of highlight.</p> | |
3067 </value> | |
3068 <value> | |
3069 <code>STATIC_METHOD_REFERENCE</code> | |
3070 <p>Only for version 2 of highlight.</p> | |
3071 </value> | |
3072 <value> | |
3073 <code>STATIC_SETTER_DECLARATION</code> | |
3074 <p>Only for version 2 of highlight.</p> | |
3075 </value> | |
3076 <value> | |
3077 <code>STATIC_SETTER_REFERENCE</code> | |
3078 <p>Only for version 2 of highlight.</p> | |
3079 </value> | |
3080 <value> | |
3081 <code>TOP_LEVEL_FUNCTION_DECLARATION</code> | |
3082 <p>Only for version 2 of highlight.</p> | |
3083 </value> | |
3084 <value> | |
3085 <code>TOP_LEVEL_FUNCTION_REFERENCE</code> | |
3086 <p>Only for version 2 of highlight.</p> | |
3087 </value> | |
3088 <value> | |
3089 <code>TOP_LEVEL_GETTER_DECLARATION</code> | |
3090 <p>Only for version 2 of highlight.</p> | |
3091 </value> | |
3092 <value> | |
3093 <code>TOP_LEVEL_GETTER_REFERENCE</code> | |
3094 <p>Only for version 2 of highlight.</p> | |
3095 </value> | |
3096 <value> | |
3097 <code>TOP_LEVEL_SETTER_DECLARATION</code> | |
3098 <p>Only for version 2 of highlight.</p> | |
3099 </value> | |
3100 <value> | |
3101 <code>TOP_LEVEL_SETTER_REFERENCE</code> | |
3102 <p>Only for version 2 of highlight.</p> | |
3103 </value> | |
3104 <value> | |
3105 <code>TOP_LEVEL_VARIABLE_DECLARATION</code> | |
3106 <p>Only for version 2 of highlight.</p> | |
3107 </value> | |
3108 <value><code>TYPE_NAME_DYNAMIC</code></value> | |
3109 <value><code>TYPE_PARAMETER</code></value> | |
3110 <value> | |
3111 <code>UNRESOLVED_INSTANCE_MEMBER_REFERENCE</code> | |
3112 <p>Only for version 2 of highlight.</p> | |
3113 </value> | |
3114 <value> | |
3115 <code>VALID_STRING_ESCAPE</code> | |
3116 <p>Only for version 2 of highlight.</p> | |
3117 </value> | |
3118 </enum> | |
3119 </type> | |
3120 <type name="HoverInformation"> | |
3121 <p> | |
3122 The hover information associated with a specific location. | |
3123 </p> | |
3124 <object> | |
3125 <field name="offset"> | |
3126 <ref>int</ref> | |
3127 <p> | |
3128 The offset of the range of characters that encompasses the | |
3129 cursor position and has the same hover information as the | |
3130 cursor position. | |
3131 </p> | |
3132 </field> | |
3133 <field name="length"> | |
3134 <ref>int</ref> | |
3135 <p> | |
3136 The length of the range of characters that encompasses the | |
3137 cursor position and has the same hover information as the | |
3138 cursor position. | |
3139 </p> | |
3140 </field> | |
3141 <field name="containingLibraryPath" optional="true"> | |
3142 <ref>String</ref> | |
3143 <p> | |
3144 The path to the defining compilation unit of the library | |
3145 in which the referenced element is declared. This data is | |
3146 omitted if there is no referenced element, or if the | |
3147 element is declared inside an HTML file. | |
3148 </p> | |
3149 </field> | |
3150 <field name="containingLibraryName" optional="true"> | |
3151 <ref>String</ref> | |
3152 <p> | |
3153 The name of the library in which the referenced element is | |
3154 declared. This data is omitted if there is no referenced | |
3155 element, or if the element is declared inside an HTML | |
3156 file. | |
3157 </p> | |
3158 </field> | |
3159 <field name="containingClassDescription" optional="true"> | |
3160 <ref>String</ref> | |
3161 <p> | |
3162 A human-readable description of the class declaring the element | |
3163 being referenced. This data is omitted if there is no referenced | |
3164 element, or if the element is not a class member. | |
3165 </p> | |
3166 </field> | |
3167 <field name="dartdoc" optional="true"> | |
3168 <ref>String</ref> | |
3169 <p> | |
3170 The dartdoc associated with the referenced element. Other | |
3171 than the removal of the comment delimiters, including | |
3172 leading asterisks in the case of a block comment, the | |
3173 dartdoc is unprocessed markdown. This data is omitted if | |
3174 there is no referenced element, or if the element has no | |
3175 dartdoc. | |
3176 </p> | |
3177 </field> | |
3178 <field name="elementDescription" optional="true"> | |
3179 <ref>String</ref> | |
3180 <p> | |
3181 A human-readable description of the element being | |
3182 referenced. This data is omitted if there is no referenced | |
3183 element. | |
3184 </p> | |
3185 </field> | |
3186 <field name="elementKind" optional="true"> | |
3187 <ref>String</ref> | |
3188 <p> | |
3189 A human-readable description of the kind of element being | |
3190 referenced (such as "class" or "function type | |
3191 alias"). This data is omitted if there is no referenced | |
3192 element. | |
3193 </p> | |
3194 </field> | |
3195 <field name="isDeprecated" optional="true"> | |
3196 <ref>bool</ref> | |
3197 <p> | |
3198 True if the referenced element is deprecated. | |
3199 </p> | |
3200 </field> | |
3201 <field name="parameter" optional="true"> | |
3202 <ref>String</ref> | |
3203 <p> | |
3204 A human-readable description of the parameter | |
3205 corresponding to the expression being hovered over. This | |
3206 data is omitted if the location is not in an argument to a | |
3207 function. | |
3208 </p> | |
3209 </field> | |
3210 <field name="propagatedType" optional="true"> | |
3211 <ref>String</ref> | |
3212 <p> | |
3213 The name of the propagated type of the expression. This | |
3214 data is omitted if the location does not correspond to an | |
3215 expression or if there is no propagated type information. | |
3216 </p> | |
3217 </field> | |
3218 <field name="staticType" optional="true"> | |
3219 <ref>String</ref> | |
3220 <p> | |
3221 The name of the static type of the expression. This data | |
3222 is omitted if the location does not correspond to an | |
3223 expression. | |
3224 </p> | |
3225 </field> | |
3226 </object> | |
3227 </type> | |
3228 <type name="ImplementedClass"> | |
3229 <p> | |
3230 A description of a class that is implemented or extended. | |
3231 </p> | |
3232 <object> | |
3233 <field name="offset"> | |
3234 <ref>int</ref> | |
3235 <p> | |
3236 The offset of the name of the implemented class. | |
3237 </p> | |
3238 </field> | |
3239 <field name="length"> | |
3240 <ref>int</ref> | |
3241 <p> | |
3242 The length of the name of the implemented class. | |
3243 </p> | |
3244 </field> | |
3245 </object> | |
3246 </type> | |
3247 <type name="ImplementedMember"> | |
3248 <p> | |
3249 A description of a class member that is implemented or overridden. | |
3250 </p> | |
3251 <object> | |
3252 <field name="offset"> | |
3253 <ref>int</ref> | |
3254 <p> | |
3255 The offset of the name of the implemented member. | |
3256 </p> | |
3257 </field> | |
3258 <field name="length"> | |
3259 <ref>int</ref> | |
3260 <p> | |
3261 The length of the name of the implemented member. | |
3262 </p> | |
3263 </field> | |
3264 </object> | |
3265 </type> | |
3266 <type name="LinkedEditGroup"> | |
3267 <p> | |
3268 A collection of positions that should be linked (edited | |
3269 simultaneously) for the purposes of updating code after a | |
3270 source change. For example, if a set of edits introduced a | |
3271 new variable name, the group would contain all of the | |
3272 positions of the variable name so that if the client wanted | |
3273 to let the user edit the variable name after the operation, | |
3274 all occurrences of the name could be edited simultaneously. | |
3275 </p> | |
3276 <object> | |
3277 <field name="positions"> | |
3278 <list><ref>Position</ref></list> | |
3279 <p> | |
3280 The positions of the regions that should be edited | |
3281 simultaneously. | |
3282 </p> | |
3283 </field> | |
3284 <field name="length"> | |
3285 <ref>int</ref> | |
3286 <p> | |
3287 The length of the regions that should be edited | |
3288 simultaneously. | |
3289 </p> | |
3290 </field> | |
3291 <field name="suggestions"> | |
3292 <list><ref>LinkedEditSuggestion</ref></list> | |
3293 <p> | |
3294 Pre-computed suggestions for what every region might | |
3295 want to be changed to. | |
3296 </p> | |
3297 </field> | |
3298 </object> | |
3299 </type> | |
3300 <type name="LinkedEditSuggestion"> | |
3301 <p> | |
3302 A suggestion of a value that could be used to replace all of | |
3303 the linked edit regions in a LinkedEditGroup. | |
3304 </p> | |
3305 <object> | |
3306 <field name="value"> | |
3307 <ref>String</ref> | |
3308 <p> | |
3309 The value that could be used to replace all of the linked | |
3310 edit regions. | |
3311 </p> | |
3312 </field> | |
3313 <field name="kind"> | |
3314 <ref>LinkedEditSuggestionKind</ref> | |
3315 <p> | |
3316 The kind of value being proposed. | |
3317 </p> | |
3318 </field> | |
3319 </object> | |
3320 </type> | |
3321 <type name="LinkedEditSuggestionKind"> | |
3322 <p> | |
3323 An enumeration of the kind of values that can be suggested | |
3324 for a linked edit. | |
3325 </p> | |
3326 <enum> | |
3327 <value><code>METHOD</code></value> | |
3328 <value><code>PARAMETER</code></value> | |
3329 <value><code>TYPE</code></value> | |
3330 <value><code>VARIABLE</code></value> | |
3331 </enum> | |
3332 </type> | |
3333 <type name="Location"> | |
3334 <p> | |
3335 A location (character range) within a file. | |
3336 </p> | |
3337 <object> | |
3338 <field name="file"> | |
3339 <ref>FilePath</ref> | |
3340 <p> | |
3341 The file containing the range. | |
3342 </p> | |
3343 </field> | |
3344 <field name="offset"> | |
3345 <ref>int</ref> | |
3346 <p> | |
3347 The offset of the range. | |
3348 </p> | |
3349 </field> | |
3350 <field name="length"> | |
3351 <ref>int</ref> | |
3352 <p> | |
3353 The length of the range. | |
3354 </p> | |
3355 </field> | |
3356 <field name="startLine"> | |
3357 <ref>int</ref> | |
3358 <p> | |
3359 The one-based index of the line containing the first | |
3360 character of the range. | |
3361 </p> | |
3362 </field> | |
3363 <field name="startColumn"> | |
3364 <ref>int</ref> | |
3365 <p> | |
3366 The one-based index of the column containing the first | |
3367 character of the range. | |
3368 </p> | |
3369 </field> | |
3370 </object> | |
3371 </type> | |
3372 <type name="NavigationRegion"> | |
3373 <p> | |
3374 A description of a region from which the user can navigate to | |
3375 the declaration of an element. | |
3376 </p> | |
3377 <object> | |
3378 <field name="offset"> | |
3379 <ref>int</ref> | |
3380 <p> | |
3381 The offset of the region from which the user can navigate. | |
3382 </p> | |
3383 </field> | |
3384 <field name="length"> | |
3385 <ref>int</ref> | |
3386 <p> | |
3387 The length of the region from which the user can navigate. | |
3388 </p> | |
3389 </field> | |
3390 <field name="targets"> | |
3391 <list><ref>int</ref></list> | |
3392 <p> | |
3393 The indexes of the targets (in the enclosing navigation response) | |
3394 to which the given region is bound. By opening the target, clients | |
3395 can implement one form of navigation. This list cannot be empty. | |
3396 </p> | |
3397 </field> | |
3398 </object> | |
3399 </type> | |
3400 <type name="NavigationTarget"> | |
3401 <p> | |
3402 A description of a target to which the user can navigate. | |
3403 </p> | |
3404 <object> | |
3405 <field name="kind"> | |
3406 <ref>ElementKind</ref> | |
3407 <p> | |
3408 The kind of the element. | |
3409 </p> | |
3410 </field> | |
3411 <field name="fileIndex"> | |
3412 <ref>int</ref> | |
3413 <p> | |
3414 The index of the file (in the enclosing navigation response) to | |
3415 navigate to. | |
3416 </p> | |
3417 </field> | |
3418 <field name="offset"> | |
3419 <ref>int</ref> | |
3420 <p> | |
3421 The offset of the region to which the user can navigate. | |
3422 </p> | |
3423 </field> | |
3424 <field name="length"> | |
3425 <ref>int</ref> | |
3426 <p> | |
3427 The length of the region to which the user can navigate. | |
3428 </p> | |
3429 </field> | |
3430 <field name="startLine"> | |
3431 <ref>int</ref> | |
3432 <p> | |
3433 The one-based index of the line containing the first | |
3434 character of the region. | |
3435 </p> | |
3436 </field> | |
3437 <field name="startColumn"> | |
3438 <ref>int</ref> | |
3439 <p> | |
3440 The one-based index of the column containing the first | |
3441 character of the region. | |
3442 </p> | |
3443 </field> | |
3444 </object> | |
3445 </type> | |
3446 <type name="Occurrences"> | |
3447 <p> | |
3448 A description of the references to a single element within a | |
3449 single file. | |
3450 </p> | |
3451 <object> | |
3452 <field name="element"> | |
3453 <ref>Element</ref> | |
3454 <p> | |
3455 The element that was referenced. | |
3456 </p> | |
3457 </field> | |
3458 <field name="offsets"> | |
3459 <list><ref>int</ref></list> | |
3460 <p> | |
3461 The offsets of the name of the referenced element within | |
3462 the file. | |
3463 </p> | |
3464 </field> | |
3465 <field name="length"> | |
3466 <ref>int</ref> | |
3467 <p> | |
3468 The length of the name of the referenced element. | |
3469 </p> | |
3470 </field> | |
3471 </object> | |
3472 </type> | |
3473 <type name="Outline"> | |
3474 <p> | |
3475 An node in the outline structure of a file. | |
3476 </p> | |
3477 <object> | |
3478 <field name="element"> | |
3479 <ref>Element</ref> | |
3480 <p> | |
3481 A description of the element represented by this node. | |
3482 </p> | |
3483 </field> | |
3484 <field name="offset"> | |
3485 <ref>int</ref> | |
3486 <p> | |
3487 The offset of the first character of the element. This is | |
3488 different than the offset in the Element, which if the | |
3489 offset of the name of the element. It can be used, for | |
3490 example, to map locations in the file back to an outline. | |
3491 </p> | |
3492 </field> | |
3493 <field name="length"> | |
3494 <ref>int</ref> | |
3495 <p> | |
3496 The length of the element. | |
3497 </p> | |
3498 </field> | |
3499 <field name="children" optional="true"> | |
3500 <list><ref>Outline</ref></list> | |
3501 <p> | |
3502 The children of the node. The field will be omitted if the | |
3503 node has no children. | |
3504 </p> | |
3505 </field> | |
3506 </object> | |
3507 </type> | |
3508 <type name="Override"> | |
3509 <p> | |
3510 A description of a member that overrides an inherited member. | |
3511 </p> | |
3512 <object> | |
3513 <field name="offset"> | |
3514 <ref>int</ref> | |
3515 <p> | |
3516 The offset of the name of the overriding member. | |
3517 </p> | |
3518 </field> | |
3519 <field name="length"> | |
3520 <ref>int</ref> | |
3521 <p> | |
3522 The length of the name of the overriding member. | |
3523 </p> | |
3524 </field> | |
3525 <field name="superclassMember" optional="true"> | |
3526 <ref>OverriddenMember</ref> | |
3527 <p> | |
3528 The member inherited from a superclass that is overridden | |
3529 by the overriding member. The field is omitted if there is | |
3530 no superclass member, in which case there must be at least | |
3531 one interface member. | |
3532 </p> | |
3533 </field> | |
3534 <field name="interfaceMembers" optional="true"> | |
3535 <list><ref>OverriddenMember</ref></list> | |
3536 <p> | |
3537 The members inherited from interfaces that are overridden | |
3538 by the overriding member. The field is omitted if there | |
3539 are no interface members, in which case there must be a | |
3540 superclass member. | |
3541 </p> | |
3542 </field> | |
3543 </object> | |
3544 </type> | |
3545 <type name="OverriddenMember"> | |
3546 <p> | |
3547 A description of a member that is being overridden. | |
3548 </p> | |
3549 <object> | |
3550 <field name="element"> | |
3551 <ref>Element</ref> | |
3552 <p> | |
3553 The element that is being overridden. | |
3554 </p> | |
3555 </field> | |
3556 <field name="className"> | |
3557 <ref>String</ref> | |
3558 <p> | |
3559 The name of the class in which the member is defined. | |
3560 </p> | |
3561 </field> | |
3562 </object> | |
3563 </type> | |
3564 <type name="Position"> | |
3565 <p> | |
3566 A position within a file. | |
3567 </p> | |
3568 <object> | |
3569 <field name="file"> | |
3570 <ref>FilePath</ref> | |
3571 <p> | |
3572 The file containing the position. | |
3573 </p> | |
3574 </field> | |
3575 <field name="offset"> | |
3576 <ref>int</ref> | |
3577 <p> | |
3578 The offset of the position. | |
3579 </p> | |
3580 </field> | |
3581 </object> | |
3582 </type> | |
3583 <type name="PubStatus"> | |
3584 <p> | |
3585 An indication of the current state of pub execution. | |
3586 </p> | |
3587 <object> | |
3588 <field name="isListingPackageDirs"> | |
3589 <ref>bool</ref> | |
3590 <p> | |
3591 True if the server is currently running pub to produce a list of | |
3592 package directories. | |
3593 </p> | |
3594 </field> | |
3595 </object> | |
3596 </type> | |
3597 <type name="RefactoringKind"> | |
3598 <p> | |
3599 An enumeration of the kinds of refactorings that can be | |
3600 created. | |
3601 </p> | |
3602 <enum> | |
3603 <value><code>CONVERT_GETTER_TO_METHOD</code></value> | |
3604 <value><code>CONVERT_METHOD_TO_GETTER</code></value> | |
3605 <value><code>EXTRACT_LOCAL_VARIABLE</code></value> | |
3606 <value><code>EXTRACT_METHOD</code></value> | |
3607 <value><code>INLINE_LOCAL_VARIABLE</code></value> | |
3608 <value><code>INLINE_METHOD</code></value> | |
3609 <value><code>MOVE_FILE</code></value> | |
3610 <value><code>RENAME</code></value> | |
3611 <value><code>SORT_MEMBERS</code></value> | |
3612 </enum> | |
3613 </type> | |
3614 <type name="RefactoringMethodParameter"> | |
3615 <p> | |
3616 A description of a parameter in a method refactoring. | |
3617 </p> | |
3618 <object> | |
3619 <field name="id" optional="true"> | |
3620 <ref>String</ref> | |
3621 <p> | |
3622 The unique identifier of the parameter. | |
3623 Clients may omit this field for the parameters they want to add. | |
3624 </p> | |
3625 </field> | |
3626 <field name="kind"> | |
3627 <ref>RefactoringMethodParameterKind</ref> | |
3628 <p> | |
3629 The kind of the parameter. | |
3630 </p> | |
3631 </field> | |
3632 <field name="type"> | |
3633 <ref>String</ref> | |
3634 <p> | |
3635 The type that should be given to the parameter, or the return type | |
3636 of the parameter's function type. | |
3637 </p> | |
3638 </field> | |
3639 <field name="name"> | |
3640 <ref>String</ref> | |
3641 <p> | |
3642 The name that should be given to the parameter. | |
3643 </p> | |
3644 </field> | |
3645 <field name="parameters" optional="true"> | |
3646 <ref>String</ref> | |
3647 <p> | |
3648 The parameter list of the parameter's function type. | |
3649 If the parameter is not of a function type, this field will | |
3650 not be defined. If the function type has zero parameters, this | |
3651 field will have a value of "()". | |
3652 </p> | |
3653 </field> | |
3654 </object> | |
3655 </type> | |
3656 <type name="RefactoringFeedback"> | |
3657 <p> | |
3658 An abstract superclass of all refactoring feedbacks. | |
3659 </p> | |
3660 <object> | |
3661 </object> | |
3662 </type> | |
3663 <type name="RefactoringOptions"> | |
3664 <p> | |
3665 An abstract superclass of all refactoring options. | |
3666 </p> | |
3667 <object> | |
3668 </object> | |
3669 </type> | |
3670 <type name="RefactoringMethodParameterKind"> | |
3671 <p> | |
3672 An enumeration of the kinds of parameters. | |
3673 </p> | |
3674 <enum> | |
3675 <value><code>REQUIRED</code></value> | |
3676 <value><code>POSITIONAL</code></value> | |
3677 <value><code>NAMED</code></value> | |
3678 </enum> | |
3679 </type> | |
3680 <type name="RefactoringProblem"> | |
3681 <p> | |
3682 A description of a problem related to a refactoring. | |
3683 </p> | |
3684 <object> | |
3685 <field name="severity"> | |
3686 <ref>RefactoringProblemSeverity</ref> | |
3687 <p> | |
3688 The severity of the problem being represented. | |
3689 </p> | |
3690 </field> | |
3691 <field name="message"> | |
3692 <ref>String</ref> | |
3693 <p> | |
3694 A human-readable description of the problem being | |
3695 represented. | |
3696 </p> | |
3697 </field> | |
3698 <field name="location" optional="true"> | |
3699 <ref>Location</ref> | |
3700 <p> | |
3701 The location of the problem being represented. | |
3702 This field is omitted unless there is a specific location | |
3703 associated with the problem (such as a location where an element | |
3704 being renamed will be shadowed). | |
3705 </p> | |
3706 </field> | |
3707 </object> | |
3708 </type> | |
3709 <type name="RefactoringProblemSeverity"> | |
3710 <p> | |
3711 An enumeration of the severities of problems that can be | |
3712 returned by the refactoring requests. | |
3713 </p> | |
3714 <enum> | |
3715 <value> | |
3716 <code>INFO</code> | |
3717 <p>A minor code problem. No example, because it is not used yet. | |
3718 </p> | |
3719 </value> | |
3720 <value> | |
3721 <code>WARNING</code> | |
3722 <p>A minor code problem. For example names of local variables | |
3723 should be camel case and start with a lower case letter. Staring | |
3724 the name of a variable with an upper case is OK from the language | |
3725 point of view, but it is nice to warn the user. | |
3726 </p> | |
3727 </value> | |
3728 <value> | |
3729 <code>ERROR</code> | |
3730 <p>The refactoring technically can be performed, but there is a | |
3731 logical problem. For example the name of a local variable being | |
3732 extracted conflicts with another name in the scope, or | |
3733 duplicate parameter names in the method being extracted, or | |
3734 a conflict between a parameter name and a local variable, etc. | |
3735 In some cases the location of the problem is also provided, so | |
3736 the IDE can show user the location and the problem, and let the | |
3737 user decide whether she wants to perform the refactoring. For | |
3738 example the name conflict might be expected, and the user wants | |
3739 to fix it afterwards. | |
3740 </p> | |
3741 </value> | |
3742 <value> | |
3743 <code>FATAL</code> | |
3744 <p>A fatal error, which prevents performing the refactoring. | |
3745 For example the name of a local variable being extracted is not a | |
3746 valid identifier, or selection is not a valid expression. | |
3747 </p> | |
3748 </value> | |
3749 </enum> | |
3750 </type> | |
3751 <type name="RemoveContentOverlay"> | |
3752 <p> | |
3753 A directive to remove an existing file content overlay. | |
3754 After processing this directive, the file contents will once | |
3755 again be read from the file system. | |
3756 </p> | |
3757 <p> | |
3758 If this directive is used on a file that doesn't currently | |
3759 have a content overlay, it has no effect. | |
3760 </p> | |
3761 <object> | |
3762 <field name="type" value="remove"><ref>String</ref></field> | |
3763 </object> | |
3764 </type> | |
3765 <type name="RequestError"> | |
3766 <p> | |
3767 An indication of a problem with the execution of the server, | |
3768 typically in response to a request. | |
3769 </p> | |
3770 <object> | |
3771 <field name="code"> | |
3772 <ref>RequestErrorCode</ref> | |
3773 <p> | |
3774 A code that uniquely identifies the error that occurred. | |
3775 </p> | |
3776 </field> | |
3777 <field name="message"> | |
3778 <ref>String</ref> | |
3779 <p> | |
3780 A short description of the error. | |
3781 </p> | |
3782 </field> | |
3783 <field name="stackTrace" optional="true"> | |
3784 <ref>String</ref> | |
3785 <p> | |
3786 The stack trace associated with processing the request, | |
3787 used for debugging the server. | |
3788 </p> | |
3789 </field> | |
3790 </object> | |
3791 </type> | |
3792 <type name="RequestErrorCode"> | |
3793 <p> | |
3794 An enumeration of the types of errors that can occur in the | |
3795 execution of the server. | |
3796 </p> | |
3797 <enum> | |
3798 <value> | |
3799 <code>CONTENT_MODIFIED</code> | |
3800 <p> | |
3801 An "analysis.getErrors" or "analysis.getNavigation" request could | |
3802 not be satisfied because the content of the file changed before | |
3803 the requested results could be computed. | |
3804 </p> | |
3805 </value> | |
3806 <value> | |
3807 <code>DEBUG_PORT_COULD_NOT_BE_OPENED</code> | |
3808 <p> | |
3809 The server was unable to open a port for the diagnostic server. | |
3810 </p> | |
3811 </value> | |
3812 <value> | |
3813 <code>FILE_NOT_ANALYZED</code> | |
3814 <p> | |
3815 A request specified a FilePath which does not match a file in | |
3816 an analysis root, or the requested operation is not available | |
3817 for the file. | |
3818 </p> | |
3819 </value> | |
3820 <value> | |
3821 <code>FORMAT_INVALID_FILE</code> | |
3822 <p> | |
3823 An "edit.format" request specified a FilePath | |
3824 which does not match a Dart file in an analysis root. | |
3825 </p> | |
3826 </value> | |
3827 <value> | |
3828 <code>FORMAT_WITH_ERRORS</code> | |
3829 <p> | |
3830 An "edit.format" request specified a file that contains syntax | |
3831 errors. | |
3832 </p> | |
3833 </value> | |
3834 <value> | |
3835 <code>GET_ERRORS_INVALID_FILE</code> | |
3836 <p> | |
3837 An "analysis.getErrors" request specified a FilePath | |
3838 which does not match a file currently subject to | |
3839 analysis. | |
3840 </p> | |
3841 </value> | |
3842 <value> | |
3843 <code>GET_NAVIGATION_INVALID_FILE</code> | |
3844 <p> | |
3845 An "analysis.getNavigation" request specified a FilePath | |
3846 which does not match a file currently subject to | |
3847 analysis. | |
3848 </p> | |
3849 </value> | |
3850 <value> | |
3851 <code>GET_REACHABLE_SOURCES_INVALID_FILE</code> | |
3852 <p> | |
3853 An "analysis.getReachableSources" request specified a FilePath | |
3854 which does not match a file currently subject to | |
3855 analysis. | |
3856 </p> | |
3857 </value> | |
3858 <value> | |
3859 <code>INVALID_ANALYSIS_ROOT</code> | |
3860 <p> | |
3861 A path passed as an argument to a request (such as | |
3862 analysis.reanalyze) is required to be an analysis root, but isn't. | |
3863 </p> | |
3864 </value> | |
3865 <value> | |
3866 <code>INVALID_EXECUTION_CONTEXT</code> | |
3867 <p> | |
3868 The context root used to create an execution context does not | |
3869 exist. | |
3870 </p> | |
3871 </value> | |
3872 <value> | |
3873 <code>INVALID_FILE_PATH_FORMAT</code> | |
3874 <p> | |
3875 The format of the given file path is invalid, e.g. is not | |
3876 absolute and normalized. | |
3877 </p> | |
3878 </value> | |
3879 <value> | |
3880 <code>INVALID_OVERLAY_CHANGE</code> | |
3881 <p> | |
3882 An "analysis.updateContent" request contained a | |
3883 ChangeContentOverlay object which can't be applied, due | |
3884 to an edit having an offset or length that is out of | |
3885 range. | |
3886 </p> | |
3887 </value> | |
3888 <value> | |
3889 <code>INVALID_PARAMETER</code> | |
3890 <p> | |
3891 One of the method parameters was invalid. | |
3892 </p> | |
3893 </value> | |
3894 <value> | |
3895 <code>INVALID_REQUEST</code> | |
3896 <p> | |
3897 A malformed request was received. | |
3898 </p> | |
3899 </value> | |
3900 <value> | |
3901 <code>ORGANIZE_DIRECTIVES_ERROR</code> | |
3902 <p> | |
3903 An "edit.organizeDirectives" request specified a Dart file that | |
3904 cannot be analyzed. The reason is described in the message. | |
3905 </p> | |
3906 </value> | |
3907 <value> | |
3908 <code>REFACTORING_REQUEST_CANCELLED</code> | |
3909 <p> | |
3910 Another refactoring request was received during processing of | |
3911 this one. | |
3912 </p> | |
3913 </value> | |
3914 <value> | |
3915 <code>SERVER_ALREADY_STARTED</code> | |
3916 <p> | |
3917 The analysis server has already been started (and hence | |
3918 won't accept new connections). | |
3919 </p> | |
3920 <p> | |
3921 This error is included for future expansion; at present | |
3922 the analysis server can only speak to one client at a | |
3923 time so this error will never occur. | |
3924 </p> | |
3925 </value> | |
3926 <value> | |
3927 <code>SERVER_ERROR</code> | |
3928 <p> | |
3929 An internal error occurred in the analysis server. | |
3930 Also see the server.error notification. | |
3931 </p> | |
3932 </value> | |
3933 <value> | |
3934 <code>SORT_MEMBERS_INVALID_FILE</code> | |
3935 <p> | |
3936 An "edit.sortMembers" request specified a FilePath | |
3937 which does not match a Dart file in an analysis root. | |
3938 </p> | |
3939 </value> | |
3940 <value> | |
3941 <code>SORT_MEMBERS_PARSE_ERRORS</code> | |
3942 <p> | |
3943 An "edit.sortMembers" request specified a Dart file that has | |
3944 scan or parse errors. | |
3945 </p> | |
3946 </value> | |
3947 <value> | |
3948 <code>UNANALYZED_PRIORITY_FILES</code> | |
3949 <p> | |
3950 An "analysis.setPriorityFiles" request includes one or | |
3951 more files that are not being analyzed. | |
3952 </p> | |
3953 <p> | |
3954 This is a legacy error; it will be removed before the | |
3955 API reaches version 1.0. | |
3956 </p> | |
3957 <!-- TODO(paulberry): remove this error and the code that | |
3958 generates it. --> | 2889 generates it. --> |
3959 </value> | 2890 </value> |
3960 <value> | 2891 <value> |
3961 <code>UNKNOWN_REQUEST</code> | 2892 <code>UNKNOWN_REQUEST</code> |
3962 <p> | 2893 <p> |
3963 A request was received which the analysis server does | 2894 A request was received which the analysis server does |
3964 not recognize, or cannot handle in its current | 2895 not recognize, or cannot handle in its current |
3965 configuration. | 2896 configuration. |
3966 </p> | 2897 </p> |
3967 </value> | 2898 </value> |
3968 <value> | 2899 <value> |
3969 <code>UNKNOWN_SOURCE</code> | 2900 <code>UNKNOWN_SOURCE</code> |
3970 <p> | 2901 <p> |
3971 The analysis server was requested to perform an action | 2902 The analysis server was requested to perform an action |
3972 on a source that does not exist. | 2903 on a source that does not exist. |
3973 </p> | 2904 </p> |
3974 </value> | 2905 </value> |
3975 <value> | 2906 <value> |
3976 <code>UNSUPPORTED_FEATURE</code> | 2907 <code>UNSUPPORTED_FEATURE</code> |
3977 <p> | 2908 <p> |
3978 The analysis server was requested to perform an action | 2909 The analysis server was requested to perform an action |
3979 which is not supported. | 2910 which is not supported. |
3980 </p> | 2911 </p> |
3981 <p> | 2912 <p> |
3982 This is a legacy error; it will be removed before the | 2913 This is a legacy error; it will be removed before the |
3983 API reaches version 1.0. | 2914 API reaches version 1.0. |
3984 </p> | 2915 </p> |
3985 <!-- TODO(paulberry): remove this error and the code that | 2916 <!-- TODO(paulberry): remove this error and the code that |
3986 generates it. --> | 2917 generates it. --> |
3987 </value> | 2918 </value> |
3988 </enum> | 2919 </enum> |
3989 </type> | 2920 </type> |
3990 <type name="SearchId"> | 2921 <type name="SearchId"> |
3991 <ref>String</ref> | 2922 <ref>String</ref> |
3992 <p> | 2923 <p> |
3993 An identifier used to associate search results with a search | 2924 An identifier used to associate search results with a search |
3994 request. | 2925 request. |
3995 </p> | 2926 </p> |
3996 </type> | 2927 </type> |
3997 <type name="SearchResult"> | 2928 <type name="SearchResult"> |
3998 <p> | 2929 <p> |
3999 A single result from a search request. | 2930 A single result from a search request. |
4000 </p> | 2931 </p> |
4001 <object> | 2932 <object> |
4002 <field name="location"> | 2933 <field name="location"> |
4003 <ref>Location</ref> | 2934 <ref>Location</ref> |
4004 <p> | 2935 <p> |
4005 The location of the code that matched the search criteria. | 2936 The location of the code that matched the search criteria. |
4006 </p> | 2937 </p> |
4007 </field> | 2938 </field> |
4008 <field name="kind"> | 2939 <field name="kind"> |
4009 <ref>SearchResultKind</ref> | 2940 <ref>SearchResultKind</ref> |
4010 <p> | 2941 <p> |
4011 The kind of element that was found or the kind of | 2942 The kind of element that was found or the kind of |
4012 reference that was found. | 2943 reference that was found. |
4013 </p> | 2944 </p> |
4014 </field> | 2945 </field> |
4015 <field name="isPotential"> | 2946 <field name="isPotential"> |
4016 <ref>bool</ref> | 2947 <ref>bool</ref> |
4017 <p> | 2948 <p> |
4018 True if the result is a potential match but cannot be | 2949 True if the result is a potential match but cannot be |
4019 confirmed to be a match. For example, if all references to | 2950 confirmed to be a match. For example, if all references to |
4020 a method m defined in some class were requested, and a | 2951 a method m defined in some class were requested, and a |
4021 reference to a method m from an unknown class were found, | 2952 reference to a method m from an unknown class were found, |
4022 it would be marked as being a potential match. | 2953 it would be marked as being a potential match. |
4023 </p> | 2954 </p> |
4024 </field> | 2955 </field> |
4025 <field name="path"> | 2956 <field name="path"> |
4026 <list><ref>Element</ref></list> | 2957 <list> |
4027 <p> | 2958 <ref>Element</ref> |
4028 The elements that contain the result, starting with the | 2959 </list> |
4029 most immediately enclosing ancestor and ending with the | 2960 <p> |
4030 library. | 2961 The elements that contain the result, starting with the |
4031 </p> | 2962 most immediately enclosing ancestor and ending with the |
4032 </field> | 2963 library. |
4033 </object> | 2964 </p> |
4034 </type> | 2965 </field> |
4035 <type name="SearchResultKind"> | 2966 </object> |
4036 <p> | 2967 </type> |
4037 An enumeration of the kinds of search results returned by the | 2968 <type name="SearchResultKind"> |
4038 search domain. | 2969 <p> |
4039 </p> | 2970 An enumeration of the kinds of search results returned by the |
4040 <enum> | 2971 search domain. |
4041 <value> | 2972 </p> |
4042 <code>DECLARATION</code> | 2973 <enum> |
4043 <p> | 2974 <value> |
4044 The declaration of an element. | 2975 <code>DECLARATION</code> |
4045 </p> | 2976 <p> |
4046 </value> | 2977 The declaration of an element. |
4047 <value> | 2978 </p> |
4048 <code>INVOCATION</code> | 2979 </value> |
4049 <p> | 2980 <value> |
4050 The invocation of a function or method. | 2981 <code>INVOCATION</code> |
4051 </p> | 2982 <p> |
4052 </value> | 2983 The invocation of a function or method. |
4053 <value> | 2984 </p> |
4054 <code>READ</code> | 2985 </value> |
4055 <p> | 2986 <value> |
4056 A reference to a field, parameter or variable where it is being re
ad. | 2987 <code>READ</code> |
4057 </p> | 2988 <p> |
4058 </value> | 2989 A reference to a field, parameter or variable where it is being read. |
4059 <value> | 2990 </p> |
4060 <code>READ_WRITE</code> | 2991 </value> |
4061 <p> | 2992 <value> |
4062 A reference to a field, parameter or variable where it is being re
ad and written. | 2993 <code>READ_WRITE</code> |
4063 </p> | 2994 <p> |
4064 </value> | 2995 A reference to a field, parameter or variable where it is being read |
4065 <value> | 2996 and written. |
4066 <code>REFERENCE</code> | 2997 </p> |
4067 <p> | 2998 </value> |
4068 A reference to an element. | 2999 <value> |
4069 </p> | 3000 <code>REFERENCE</code> |
4070 </value> | 3001 <p> |
4071 <value> | 3002 A reference to an element. |
4072 <code>UNKNOWN</code> | 3003 </p> |
4073 <p> | 3004 </value> |
4074 Some other kind of search result. | 3005 <value> |
4075 </p> | 3006 <code>UNKNOWN</code> |
4076 </value> | 3007 <p> |
4077 <value> | 3008 Some other kind of search result. |
4078 <code>WRITE</code> | 3009 </p> |
4079 <p> | 3010 </value> |
4080 A reference to a field, parameter or variable where it is being wr
itten. | 3011 <value> |
4081 </p> | 3012 <code>WRITE</code> |
4082 </value> | 3013 <p> |
4083 </enum> | 3014 A reference to a field, parameter or variable where it is being |
4084 </type> | 3015 written. |
4085 <type name="ServerService"> | 3016 </p> |
4086 <p> | 3017 </value> |
4087 An enumeration of the services provided by the server domain. | 3018 </enum> |
4088 </p> | 3019 </type> |
4089 <enum> | 3020 <type name="ServerService"> |
4090 <value><code>STATUS</code></value> | 3021 <p> |
4091 </enum> | 3022 An enumeration of the services provided by the server domain. |
4092 </type> | 3023 </p> |
4093 <type name="SourceChange"> | 3024 <enum> |
4094 <p> | 3025 <value><code>STATUS</code></value> |
4095 A description of a set of edits that implement a single | 3026 </enum> |
4096 conceptual change. | 3027 </type> |
4097 </p> | 3028 <type name="TypeHierarchyItem"> |
4098 <object> | 3029 <p> |
4099 <field name="message"> | 3030 A representation of a class in a type hierarchy. |
4100 <ref>String</ref> | 3031 </p> |
4101 <p> | 3032 <object> |
4102 A human-readable description of the change to be applied. | 3033 <field name="classElement"> |
4103 </p> | 3034 <ref>Element</ref> |
4104 </field> | 3035 <p> |
4105 <field name="edits"> | 3036 The class element represented by this item. |
4106 <list><ref>SourceFileEdit</ref></list> | 3037 </p> |
4107 <p> | 3038 </field> |
4108 A list of the edits used to effect the change, grouped by | 3039 <field name="displayName" optional="true"> |
4109 file. | 3040 <ref>String</ref> |
4110 </p> | 3041 <p> |
4111 </field> | 3042 The name to be displayed for the class. This field will be |
4112 <field name="linkedEditGroups"> | 3043 omitted if the display name is the same as the name of the |
4113 <list><ref>LinkedEditGroup</ref></list> | 3044 element. The display name is different if there is |
4114 <p> | 3045 additional type information to be displayed, such as type |
4115 A list of the linked editing groups used to customize | 3046 arguments. |
4116 the changes that were made. | 3047 </p> |
4117 </p> | 3048 </field> |
4118 </field> | 3049 <field name="memberElement" optional="true"> |
4119 <field name="selection" optional="true"> | 3050 <ref>Element</ref> |
4120 <ref>Position</ref> | 3051 <p> |
4121 <p> | 3052 The member in the class corresponding to the member on |
4122 The position that should be selected after the edits | 3053 which the hierarchy was requested. This field will be |
4123 have been applied. | 3054 omitted if the hierarchy was not requested for a member or |
4124 </p> | 3055 if the class does not have a corresponding member. |
4125 </field> | 3056 </p> |
4126 </object> | 3057 </field> |
4127 </type> | 3058 <field name="superclass" optional="true"> |
4128 <type name="SourceEdit"> | 3059 <ref>int</ref> |
4129 <p> | 3060 <p> |
4130 A description of a single change to a single file. | 3061 The index of the item representing the superclass of |
4131 </p> | 3062 this class. This field will be omitted if this item |
4132 <object> | 3063 represents the class Object. |
4133 <field name="offset"> | 3064 </p> |
4134 <ref>int</ref> | 3065 </field> |
4135 <p> | 3066 <field name="interfaces"> |
4136 The offset of the region to be modified. | 3067 <list> |
4137 </p> | 3068 <ref>int</ref> |
4138 </field> | 3069 </list> |
4139 <field name="length"> | 3070 <p> |
4140 <ref>int</ref> | 3071 The indexes of the items representing the interfaces |
4141 <p> | 3072 implemented by this class. The list will be empty if |
4142 The length of the region to be modified. | 3073 there are no implemented interfaces. |
4143 </p> | 3074 </p> |
4144 </field> | 3075 </field> |
4145 <field name="replacement"> | 3076 <field name="mixins"> |
4146 <ref>String</ref> | 3077 <list> |
4147 <p> | 3078 <ref>int</ref> |
4148 The code that is to replace the specified region in the | 3079 </list> |
4149 original code. | 3080 <p> |
4150 </p> | 3081 The indexes of the items representing the mixins |
4151 </field> | 3082 referenced by this class. The list will be empty if |
4152 <field name="id" optional="true"> | 3083 there are no classes mixed in to this class. |
4153 <ref>String</ref> | 3084 </p> |
4154 <p> | 3085 </field> |
4155 An identifier that uniquely identifies this source edit from other | 3086 <field name="subclasses"> |
4156 edits in the same response. This field is omitted unless a | 3087 <list> |
4157 containing structure needs to be able to identify the edit for | 3088 <ref>int</ref> |
4158 some reason. | 3089 </list> |
4159 </p> | 3090 <p> |
4160 <p> | 3091 The indexes of the items representing the subtypes of |
4161 For example, some refactoring operations can produce edits that | 3092 this class. The list will be empty if there are no |
4162 might not be appropriate (referred to as potential edits). Such | 3093 subtypes or if this item represents a supertype of the |
4163 edits will have an id so that they can be referenced. Edits in | 3094 pivot type. |
4164 the same response that do not need to be referenced will not have | 3095 </p> |
4165 an id. | 3096 </field> |
4166 </p> | 3097 </object> |
4167 </field> | 3098 </type> |
4168 </object> | 3099 </types> |
4169 </type> | 3100 <refactorings> |
4170 <type name="SourceFileEdit"> | 3101 <h2><a name="refactorings">Refactorings</a></h2> |
4171 <p> | 3102 <p> |
4172 A description of a set of changes to a single file. | 3103 This section contains additional information for each kind of |
4173 </p> | 3104 refactoring. In addition to a brief description of the |
4174 <object> | 3105 refactoring, there is a specification of the feedback that is |
4175 <field name="file"> | 3106 provided when a refactoring is requested using the |
4176 <ref>FilePath</ref> | 3107 edit.getRefactoring request (designed to improve the UX) |
4177 <p> | 3108 and the options that may be provided to edit.getRefactoring. |
4178 The file containing the code to be modified. | 3109 </p> |
4179 </p> | 3110 <refactoring kind="CONVERT_GETTER_TO_METHOD"> |
4180 </field> | 3111 <p> |
4181 <field name="fileStamp"> | 3112 Convert a getter into a method by removing the keyword get |
4182 <ref>long</ref> | 3113 and adding an empty parameter list. |
4183 <p> | 3114 </p> |
4184 The modification stamp of the file at the moment when the change | 3115 <p> |
4185 was created, in milliseconds since the "Unix epoch". Will be -1 if | 3116 It is an error if the range contains anything other than all |
4186 the file did not exist and should be created. The client may use | 3117 or part of the name of a single getter. |
4187 this field to make sure that the file was not changed since then, | 3118 </p> |
4188 so it is safe to apply the change. | 3119 </refactoring> |
4189 </p> | 3120 <refactoring kind="CONVERT_METHOD_TO_GETTER"> |
4190 </field> | 3121 <p> |
4191 <field name="edits"> | 3122 Convert a method into a getter by adding the keyword get and |
4192 <list><ref>SourceEdit</ref></list> | 3123 removing the parameter list. |
4193 <p> | 3124 </p> |
4194 A list of the edits used to effect the change. | 3125 <p> |
4195 </p> | 3126 It is an error if the range contains anything other than all |
4196 </field> | 3127 or part of the name of a single method or if the method has |
4197 </object> | 3128 a non-empty parameter list. |
4198 </type> | 3129 </p> |
4199 <type name="TypeHierarchyItem"> | 3130 </refactoring> |
4200 <p> | 3131 <refactoring kind="EXTRACT_LOCAL_VARIABLE"> |
4201 A representation of a class in a type hierarchy. | 3132 <p> |
4202 </p> | 3133 Create a local variable initialized by the expression that covers |
4203 <object> | 3134 the specified selection. |
4204 <field name="classElement"> | 3135 </p> |
4205 <ref>Element</ref> | 3136 <p> |
4206 <p> | 3137 It is an error if the selection range is not covered by a |
4207 The class element represented by this item. | 3138 complete expression. |
4208 </p> | 3139 </p> |
4209 </field> | 3140 <feedback> |
4210 <field name="displayName" optional="true"> | 3141 <field name="coveringExpressionOffsets" optional="true"> |
4211 <ref>String</ref> | 3142 <list> |
4212 <p> | 3143 <ref>int</ref> |
4213 The name to be displayed for the class. This field will be | 3144 </list> |
4214 omitted if the display name is the same as the name of the | 3145 <p> |
4215 element. The display name is different if there is | 3146 The offsets of the expressions that cover the specified |
4216 additional type information to be displayed, such as type | 3147 selection, from the down most to the up most. |
4217 arguments. | 3148 </p> |
4218 </p> | 3149 </field> |
4219 </field> | 3150 <field name="coveringExpressionLengths" optional="true"> |
4220 <field name="memberElement" optional="true"> | 3151 <list> |
4221 <ref>Element</ref> | 3152 <ref>int</ref> |
4222 <p> | 3153 </list> |
4223 The member in the class corresponding to the member on | 3154 <p> |
4224 which the hierarchy was requested. This field will be | 3155 The lengths of the expressions that cover the specified |
4225 omitted if the hierarchy was not requested for a member or | 3156 selection, from the down most to the up most. |
4226 if the class does not have a corresponding member. | 3157 </p> |
4227 </p> | 3158 </field> |
4228 </field> | 3159 <field name="names"> |
4229 <field name="superclass" optional="true"> | 3160 <list> |
4230 <ref>int</ref> | 3161 <ref>String</ref> |
4231 <p> | 3162 </list> |
4232 The index of the item representing the superclass of | 3163 <p> |
4233 this class. This field will be omitted if this item | 3164 The proposed names for the local variable. |
4234 represents the class Object. | 3165 </p> |
4235 </p> | 3166 </field> |
4236 </field> | 3167 <field name="offsets"> |
4237 <field name="interfaces"> | 3168 <list> |
4238 <list><ref>int</ref></list> | 3169 <ref>int</ref> |
4239 <p> | 3170 </list> |
4240 The indexes of the items representing the interfaces | 3171 <p> |
4241 implemented by this class. The list will be empty if | 3172 The offsets of the expressions that would be replaced by |
4242 there are no implemented interfaces. | 3173 a reference to the variable. |
4243 </p> | 3174 </p> |
4244 </field> | 3175 </field> |
4245 <field name="mixins"> | 3176 <field name="lengths"> |
4246 <list><ref>int</ref></list> | 3177 <list> |
4247 <p> | 3178 <ref>int</ref> |
4248 The indexes of the items representing the mixins | 3179 </list> |
4249 referenced by this class. The list will be empty if | 3180 <p> |
4250 there are no classes mixed in to this class. | 3181 The lengths of the expressions that would be replaced by |
4251 </p> | 3182 a reference to the variable. The lengths correspond to |
4252 </field> | 3183 the offsets. In other words, for a given expression, if |
4253 <field name="subclasses"> | 3184 the offset of that expression is <tt>offsets[i]</tt>, then |
4254 <list><ref>int</ref></list> | 3185 the length of that expression is <tt>lengths[i]</tt>. |
4255 <p> | 3186 </p> |
4256 The indexes of the items representing the subtypes of | 3187 </field> |
4257 this class. The list will be empty if there are no | 3188 </feedback> |
4258 subtypes or if this item represents a supertype of the | 3189 <options> |
4259 pivot type. | 3190 <field name="name"> |
4260 </p> | 3191 <ref>String</ref> |
4261 </field> | 3192 <p> |
4262 </object> | 3193 The name that the local variable should be given. |
4263 </type> | 3194 </p> |
4264 </types> | 3195 </field> |
4265 <refactorings> | 3196 <field name="extractAll"> |
4266 <h2><a name="refactorings">Refactorings</a></h2> | 3197 <ref>bool</ref> |
4267 <p> | 3198 <p> |
4268 This section contains additional information for each kind of | 3199 True if all occurrences of the expression within the |
4269 refactoring. In addition to a brief description of the | 3200 scope in which the variable will be defined should be |
4270 refactoring, there is a specification of the feedback that is | 3201 replaced by a reference to the local variable. The |
4271 provided when a refactoring is requested using the | 3202 expression used to initiate the refactoring will always |
4272 edit.getRefactoring request (designed to improve the UX) | 3203 be replaced. |
4273 and the options that may be provided to edit.getRefactoring. | 3204 </p> |
4274 </p> | 3205 </field> |
4275 <refactoring kind="CONVERT_GETTER_TO_METHOD"> | 3206 </options> |
4276 <p> | 3207 </refactoring> |
4277 Convert a getter into a method by removing the keyword get | 3208 <refactoring kind="EXTRACT_METHOD"> |
4278 and adding an empty parameter list. | 3209 <p> |
4279 </p> | 3210 Create a method whose body is the specified expression or |
4280 <p> | 3211 list of statements, possibly augmented with a return |
4281 It is an error if the range contains anything other than all | 3212 statement. |
4282 or part of the name of a single getter. | 3213 </p> |
4283 </p> | 3214 <p> |
4284 </refactoring> | 3215 It is an error if the range contains anything other than a |
4285 <refactoring kind="CONVERT_METHOD_TO_GETTER"> | 3216 complete expression (no partial expressions are allowed) or |
4286 <p> | 3217 a complete sequence of statements. |
4287 Convert a method into a getter by adding the keyword get and | 3218 </p> |
4288 removing the parameter list. | 3219 <feedback> |
4289 </p> | 3220 <field name="offset"> |
4290 <p> | 3221 <ref>int</ref> |
4291 It is an error if the range contains anything other than all | 3222 <p> |
4292 or part of the name of a single method or if the method has | 3223 The offset to the beginning of the expression or |
4293 a non-empty parameter list. | 3224 statements that will be extracted. |
4294 </p> | 3225 </p> |
4295 </refactoring> | 3226 </field> |
4296 <refactoring kind="EXTRACT_LOCAL_VARIABLE"> | 3227 <field name="length"> |
4297 <p> | 3228 <ref>int</ref> |
4298 Create a local variable initialized by the expression that covers | 3229 <p> |
4299 the specified selection. | 3230 The length of the expression or statements that will be |
4300 </p> | 3231 extracted. |
4301 <p> | 3232 </p> |
4302 It is an error if the selection range is not covered by a | 3233 </field> |
4303 complete expression. | 3234 <field name="returnType"> |
4304 </p> | 3235 <ref>String</ref> |
4305 <feedback> | 3236 <p> |
4306 <field name="coveringExpressionOffsets" optional="true"> | 3237 The proposed return type for the method. |
4307 <list><ref>int</ref></list> | 3238 If the returned element does not have a declared return type, |
4308 <p> | 3239 this field will contain an empty string. |
4309 The offsets of the expressions that cover the specified | 3240 </p> |
4310 selection, from the down most to the up most. | 3241 </field> |
4311 </p> | 3242 <field name="names"> |
4312 </field> | 3243 <list> |
4313 <field name="coveringExpressionLengths" optional="true"> | 3244 <ref>String</ref> |
4314 <list><ref>int</ref></list> | 3245 </list> |
4315 <p> | 3246 <p> |
4316 The lengths of the expressions that cover the specified | 3247 The proposed names for the method. |
4317 selection, from the down most to the up most. | 3248 </p> |
4318 </p> | 3249 </field> |
4319 </field> | 3250 <field name="canCreateGetter"> |
4320 <field name="names"> | 3251 <ref>bool</ref> |
4321 <list><ref>String</ref></list> | 3252 <p> |
4322 <p> | 3253 True if a getter could be created rather than a method. |
4323 The proposed names for the local variable. | 3254 </p> |
4324 </p> | 3255 </field> |
4325 </field> | 3256 <field name="parameters"> |
4326 <field name="offsets"> | 3257 <list> |
4327 <list><ref>int</ref></list> | 3258 <ref>RefactoringMethodParameter</ref> |
4328 <p> | 3259 </list> |
4329 The offsets of the expressions that would be replaced by | 3260 <p> |
4330 a reference to the variable. | 3261 The proposed parameters for the method. |
4331 </p> | 3262 </p> |
4332 </field> | 3263 </field> |
4333 <field name="lengths"> | 3264 <field name="offsets"> |
4334 <list><ref>int</ref></list> | 3265 <list> |
4335 <p> | 3266 <ref>int</ref> |
4336 The lengths of the expressions that would be replaced by | 3267 </list> |
4337 a reference to the variable. The lengths correspond to | 3268 <p> |
4338 the offsets. In other words, for a given expression, if | 3269 The offsets of the expressions or statements that would |
4339 the offset of that expression is <tt>offsets[i]</tt>, then | 3270 be replaced by an invocation of the method. |
4340 the length of that expression is <tt>lengths[i]</tt>. | 3271 </p> |
4341 </p> | 3272 </field> |
4342 </field> | 3273 <field name="lengths"> |
4343 </feedback> | 3274 <list> |
4344 <options> | 3275 <ref>int</ref> |
4345 <field name="name"> | 3276 </list> |
4346 <ref>String</ref> | 3277 <p> |
4347 <p> | 3278 The lengths of the expressions or statements that would |
4348 The name that the local variable should be given. | 3279 be replaced by an invocation of the method. The lengths |
4349 </p> | 3280 correspond to the offsets. In other words, for a given |
4350 </field> | 3281 expression (or block of statements), if the offset of |
4351 <field name="extractAll"> | 3282 that expression is <tt>offsets[i]</tt>, then the length |
4352 <ref>bool</ref> | 3283 of that expression is <tt>lengths[i]</tt>. |
4353 <p> | 3284 </p> |
4354 True if all occurrences of the expression within the | 3285 </field> |
4355 scope in which the variable will be defined should be | 3286 </feedback> |
4356 replaced by a reference to the local variable. The | 3287 <options> |
4357 expression used to initiate the refactoring will always | 3288 <field name="returnType"> |
4358 be replaced. | 3289 <ref>String</ref> |
4359 </p> | 3290 <p> |
4360 </field> | 3291 The return type that should be defined for the method. |
4361 </options> | 3292 </p> |
4362 </refactoring> | 3293 </field> |
4363 <refactoring kind="EXTRACT_METHOD"> | 3294 <field name="createGetter"> |
4364 <p> | 3295 <ref>bool</ref> |
4365 Create a method whose body is the specified expression or | 3296 <p> |
4366 list of statements, possibly augmented with a return | 3297 True if a getter should be created rather than a |
4367 statement. | 3298 method. It is an error if this field is true and the |
4368 </p> | 3299 list of parameters is non-empty. |
4369 <p> | 3300 </p> |
4370 It is an error if the range contains anything other than a | 3301 </field> |
4371 complete expression (no partial expressions are allowed) or | 3302 <field name="name"> |
4372 a complete sequence of statements. | 3303 <ref>String</ref> |
4373 </p> | 3304 <p> |
4374 <feedback> | 3305 The name that the method should be given. |
4375 <field name="offset"> | 3306 </p> |
4376 <ref>int</ref> | 3307 </field> |
4377 <p> | 3308 <field name="parameters"> |
4378 The offset to the beginning of the expression or | 3309 <list> |
4379 statements that will be extracted. | 3310 <ref>RefactoringMethodParameter</ref> |
4380 </p> | 3311 </list> |
4381 </field> | 3312 <p> |
4382 <field name="length"> | 3313 The parameters that should be defined for the method. |
4383 <ref>int</ref> | 3314 </p> |
4384 <p> | 3315 <p> |
4385 The length of the expression or statements that will be | 3316 It is an error if a REQUIRED or NAMED parameter follows a |
4386 extracted. | 3317 POSITIONAL parameter. |
4387 </p> | 3318 It is an error if a REQUIRED or POSITIONAL parameter follows a |
4388 </field> | 3319 NAMED parameter. |
4389 <field name="returnType"> | 3320 </p> |
4390 <ref>String</ref> | 3321 <ul> |
4391 <p> | 3322 <li> |
4392 The proposed return type for the method. | 3323 To change the order and/or update proposed parameters, add |
4393 If the returned element does not have a declared return type, | 3324 parameters with the same identifiers as proposed. |
4394 this field will contain an empty string. | 3325 </li> |
4395 </p> | 3326 <li>To add new parameters, omit their identifier.</li> |
4396 </field> | 3327 <li>To remove some parameters, omit them in this list.</li> |
4397 <field name="names"> | 3328 </ul> |
4398 <list><ref>String</ref></list> | 3329 </field> |
4399 <p> | 3330 <field name="extractAll"> |
4400 The proposed names for the method. | 3331 <ref>bool</ref> |
4401 </p> | 3332 <p> |
4402 </field> | 3333 True if all occurrences of the expression or statements |
4403 <field name="canCreateGetter"> | 3334 should be replaced by an invocation of the method. The |
4404 <ref>bool</ref> | 3335 expression or statements used to initiate the |
4405 <p> | 3336 refactoring will always be replaced. |
4406 True if a getter could be created rather than a method. | 3337 </p> |
4407 </p> | 3338 </field> |
4408 </field> | 3339 </options> |
4409 <field name="parameters"> | 3340 </refactoring> |
4410 <list><ref>RefactoringMethodParameter</ref></list> | 3341 <refactoring kind="INLINE_LOCAL_VARIABLE"> |
4411 <p> | 3342 <p> |
4412 The proposed parameters for the method. | 3343 Inline the initializer expression of a local variable in |
4413 </p> | 3344 place of any references to that variable. |
4414 </field> | 3345 </p> |
4415 <field name="offsets"> | 3346 <p> |
4416 <list><ref>int</ref></list> | 3347 It is an error if the range contains anything other than all |
4417 <p> | 3348 or part of the name of a single local variable. |
4418 The offsets of the expressions or statements that would | 3349 </p> |
4419 be replaced by an invocation of the method. | 3350 <feedback> |
4420 </p> | 3351 <field name="name"> |
4421 </field> | 3352 <ref>String</ref> |
4422 <field name="lengths"> | 3353 <p> |
4423 <list><ref>int</ref></list> | 3354 The name of the variable being inlined. |
4424 <p> | 3355 </p> |
4425 The lengths of the expressions or statements that would | 3356 </field> |
4426 be replaced by an invocation of the method. The lengths | 3357 <field name="occurrences"> |
4427 correspond to the offsets. In other words, for a given | 3358 <ref>int</ref> |
4428 expression (or block of statements), if the offset of | 3359 <p> |
4429 that expression is <tt>offsets[i]</tt>, then the length | 3360 The number of times the variable occurs. |
4430 of that expression is <tt>lengths[i]</tt>. | 3361 </p> |
4431 </p> | 3362 </field> |
4432 </field> | 3363 </feedback> |
4433 </feedback> | 3364 </refactoring> |
4434 <options> | 3365 <refactoring kind="INLINE_METHOD"> |
4435 <field name="returnType"> | 3366 <p> |
4436 <ref>String</ref> | 3367 Inline a method in place of one or all references to that |
4437 <p> | 3368 method. |
4438 The return type that should be defined for the method. | 3369 </p> |
4439 </p> | 3370 <p> |
4440 </field> | 3371 It is an error if the range contains anything other than all |
4441 <field name="createGetter"> | 3372 or part of the name of a single method. |
4442 <ref>bool</ref> | 3373 </p> |
4443 <p> | 3374 <feedback> |
4444 True if a getter should be created rather than a | 3375 <field name="className" optional="true"> |
4445 method. It is an error if this field is true and the | 3376 <ref>String</ref> |
4446 list of parameters is non-empty. | 3377 <p> |
4447 </p> | 3378 The name of the class enclosing the method being inlined. |
4448 </field> | 3379 If not a class member is being inlined, this field will be absent. |
4449 <field name="name"> | 3380 </p> |
4450 <ref>String</ref> | 3381 </field> |
4451 <p> | 3382 <field name="methodName"> |
4452 The name that the method should be given. | 3383 <ref>String</ref> |
4453 </p> | 3384 <p> |
4454 </field> | 3385 The name of the method (or function) being inlined. |
4455 <field name="parameters"> | 3386 </p> |
4456 <list><ref>RefactoringMethodParameter</ref></list> | 3387 </field> |
4457 <p> | 3388 <field name="isDeclaration"> |
4458 The parameters that should be defined for the method. | 3389 <ref>bool</ref> |
4459 </p> | 3390 <p> |
4460 <p> | 3391 True if the declaration of the method is selected. |
4461 It is an error if a REQUIRED or NAMED parameter follows a | 3392 So all references should be inlined. |
4462 POSITIONAL parameter. | 3393 </p> |
4463 It is an error if a REQUIRED or POSITIONAL parameter follows a | 3394 </field> |
4464 NAMED parameter. | 3395 </feedback> |
4465 </p> | 3396 <options> |
4466 <ul> | 3397 <field name="deleteSource"> |
4467 <li> | 3398 <ref>bool</ref> |
4468 To change the order and/or update proposed parameters, add | 3399 <p> |
4469 parameters with the same identifiers as proposed. | 3400 True if the method being inlined should be removed. |
4470 </li> | 3401 It is an error if this field is true and inlineAll is false. |
4471 <li>To add new parameters, omit their identifier.</li> | 3402 </p> |
4472 <li>To remove some parameters, omit them in this list.</li> | 3403 </field> |
4473 </ul> | 3404 <field name="inlineAll"> |
4474 </field> | 3405 <ref>bool</ref> |
4475 <field name="extractAll"> | 3406 <p> |
4476 <ref>bool</ref> | 3407 True if all invocations of the method should be inlined, |
4477 <p> | 3408 or false if only the invocation site used to create this |
4478 True if all occurrences of the expression or statements | 3409 refactoring should be inlined. |
4479 should be replaced by an invocation of the method. The | 3410 </p> |
4480 expression or statements used to initiate the | 3411 </field> |
4481 refactoring will always be replaced. | 3412 </options> |
4482 </p> | 3413 </refactoring> |
4483 </field> | 3414 <refactoring kind="MOVE_FILE"> |
4484 </options> | 3415 <p> |
4485 </refactoring> | 3416 Move the given file and update all of the references to that file |
4486 <refactoring kind="INLINE_LOCAL_VARIABLE"> | 3417 and from it. The move operation is supported in general case - for |
4487 <p> | 3418 renaming a file in the same folder, moving it to a different folder |
4488 Inline the initializer expression of a local variable in | 3419 or both. |
4489 place of any references to that variable. | 3420 </p> |
4490 </p> | 3421 <p> |
4491 <p> | 3422 The refactoring must be activated before an actual file moving |
4492 It is an error if the range contains anything other than all | 3423 operation is performed. |
4493 or part of the name of a single local variable. | 3424 </p> |
4494 </p> | 3425 <p> |
4495 <feedback> | 3426 The "offset" and "length" fields from the request are ignored, but the |
4496 <field name="name"> | 3427 file specified in the request specifies the file to be moved. |
4497 <ref>String</ref> | 3428 </p> |
4498 <p> | 3429 <options> |
4499 The name of the variable being inlined. | 3430 <field name="newFile"> |
4500 </p> | 3431 <ref>FilePath</ref> |
4501 </field> | 3432 <p> |
4502 <field name="occurrences"> | 3433 The new file path to which the given file is being moved. |
4503 <ref>int</ref> | 3434 </p> |
4504 <p> | 3435 </field> |
4505 The number of times the variable occurs. | 3436 </options> |
4506 </p> | 3437 </refactoring> |
4507 </field> | 3438 <refactoring kind="RENAME"> |
4508 </feedback> | 3439 <p> |
4509 </refactoring> | 3440 Rename a given element and all of the references to that |
4510 <refactoring kind="INLINE_METHOD"> | 3441 element. |
4511 <p> | 3442 </p> |
4512 Inline a method in place of one or all references to that | 3443 <p> |
4513 method. | 3444 It is an error if the range contains anything other than all |
4514 </p> | 3445 or part of the name of a single function (including methods, |
4515 <p> | 3446 getters and setters), variable (including fields, parameters |
4516 It is an error if the range contains anything other than all | 3447 and local variables), class or function type. |
4517 or part of the name of a single method. | 3448 </p> |
4518 </p> | 3449 <feedback> |
4519 <feedback> | 3450 <field name="offset"> |
4520 <field name="className" optional="true"> | 3451 <ref>int</ref> |
4521 <ref>String</ref> | 3452 <p> |
4522 <p> | 3453 The offset to the beginning of the name selected to be |
4523 The name of the class enclosing the method being inlined. | 3454 renamed. |
4524 If not a class member is being inlined, this field will be absent. | 3455 </p> |
4525 </p> | 3456 </field> |
4526 </field> | 3457 <field name="length"> |
4527 <field name="methodName"> | 3458 <ref>int</ref> |
4528 <ref>String</ref> | 3459 <p> |
4529 <p> | 3460 The length of the name selected to be renamed. |
4530 The name of the method (or function) being inlined. | 3461 </p> |
4531 </p> | 3462 </field> |
4532 </field> | 3463 <field name="elementKindName"> |
4533 <field name="isDeclaration"> | 3464 <ref>String</ref> |
4534 <ref>bool</ref> | 3465 <p> |
4535 <p> | 3466 The human-readable description of the kind of element being |
4536 True if the declaration of the method is selected. | 3467 renamed (such as "class" or "function type |
4537 So all references should be inlined. | 3468 alias"). |
4538 </p> | 3469 </p> |
4539 </field> | 3470 </field> |
4540 </feedback> | 3471 <field name="oldName"> |
4541 <options> | 3472 <ref>String</ref> |
4542 <field name="deleteSource"> | 3473 <p> |
4543 <ref>bool</ref> | 3474 The old name of the element before the refactoring. |
4544 <p> | 3475 </p> |
4545 True if the method being inlined should be removed. | 3476 </field> |
4546 It is an error if this field is true and inlineAll is false. | 3477 </feedback> |
4547 </p> | 3478 <options> |
4548 </field> | 3479 <field name="newName"> |
4549 <field name="inlineAll"> | 3480 <ref>String</ref> |
4550 <ref>bool</ref> | 3481 <p> |
4551 <p> | 3482 The name that the element should have after the |
4552 True if all invocations of the method should be inlined, | 3483 refactoring. |
4553 or false if only the invocation site used to create this | 3484 </p> |
4554 refactoring should be inlined. | 3485 </field> |
4555 </p> | 3486 </options> |
4556 </field> | 3487 </refactoring> |
4557 </options> | 3488 </refactorings> |
4558 </refactoring> | 3489 <h2>Errors</h2> |
4559 <refactoring kind="MOVE_FILE"> | 3490 <p> |
4560 <p> | 3491 This section contains a list of all of the errors that are |
4561 Move the given file and update all of the references to that file | 3492 produced by the server and the data that is returned with each. |
4562 and from it. The move operation is supported in general case - for | 3493 </p> |
4563 renaming a file in the same folder, moving it to a different folder | 3494 <p> |
4564 or both. | 3495 TODO: TBD |
4565 </p> | 3496 </p> |
4566 <p> | 3497 <h2 class="domain"><a name="index">Index</a></h2> |
4567 The refactoring must be activated before an actual file moving | 3498 <index></index> |
4568 operation is performed. | 3499 </body> |
4569 </p> | |
4570 <p> | |
4571 The "offset" and "length" fields from the request are ignored, but the | |
4572 file specified in the request specifies the file to be moved. | |
4573 </p> | |
4574 <options> | |
4575 <field name="newFile"> | |
4576 <ref>FilePath</ref> | |
4577 <p> | |
4578 The new file path to which the given file is being moved. | |
4579 </p> | |
4580 </field> | |
4581 </options> | |
4582 </refactoring> | |
4583 <refactoring kind="RENAME"> | |
4584 <p> | |
4585 Rename a given element and all of the references to that | |
4586 element. | |
4587 </p> | |
4588 <p> | |
4589 It is an error if the range contains anything other than all | |
4590 or part of the name of a single function (including methods, | |
4591 getters and setters), variable (including fields, parameters | |
4592 and local variables), class or function type. | |
4593 </p> | |
4594 <feedback> | |
4595 <field name="offset"> | |
4596 <ref>int</ref> | |
4597 <p> | |
4598 The offset to the beginning of the name selected to be | |
4599 renamed. | |
4600 </p> | |
4601 </field> | |
4602 <field name="length"> | |
4603 <ref>int</ref> | |
4604 <p> | |
4605 The length of the name selected to be renamed. | |
4606 </p> | |
4607 </field> | |
4608 <field name="elementKindName"> | |
4609 <ref>String</ref> | |
4610 <p> | |
4611 The human-readable description of the kind of element being | |
4612 renamed (such as "class" or "function type | |
4613 alias"). | |
4614 </p> | |
4615 </field> | |
4616 <field name="oldName"> | |
4617 <ref>String</ref> | |
4618 <p> | |
4619 The old name of the element before the refactoring. | |
4620 </p> | |
4621 </field> | |
4622 </feedback> | |
4623 <options> | |
4624 <field name="newName"> | |
4625 <ref>String</ref> | |
4626 <p> | |
4627 The name that the element should have after the | |
4628 refactoring. | |
4629 </p> | |
4630 </field> | |
4631 </options> | |
4632 </refactoring> | |
4633 </refactorings> | |
4634 <h2>Errors</h2> | |
4635 <p> | |
4636 This section contains a list of all of the errors that are | |
4637 produced by the server and the data that is returned with each. | |
4638 </p> | |
4639 <p> | |
4640 TODO: TBD | |
4641 </p> | |
4642 <h2 class="domain"><a name="index">Index</a></h2> | |
4643 <index></index> | |
4644 </body> | |
4645 </html> | 3500 </html> |
OLD | NEW |