Index: pkg/analysis_server/tool/spec/spec_input.html |
diff --git a/pkg/analysis_server/tool/spec/spec_input.html b/pkg/analysis_server/tool/spec/spec_input.html |
index 406fba0d2931a2cf77a76b79b6e90ba410d7670c..b322e53f964277a0303bdb659cef588d696e2da2 100644 |
--- a/pkg/analysis_server/tool/spec/spec_input.html |
+++ b/pkg/analysis_server/tool/spec/spec_input.html |
@@ -1,1537 +1,1623 @@ |
<!doctype html> |
<html> |
- <head> |
- <meta charset="UTF-8"/> |
- <title>Analysis Server API Specification</title> |
- </head> |
- <body> |
- <h1>Analysis Server API Specification</h1> |
- <h1 style="color:#999999">Version <version>1.18.1</version></h1> |
- <p> |
- This document contains a specification of the API provided by the |
- analysis server. The API in this document is currently under |
- development. Changes to the API will be accompanied by an update to the |
- protocol version number according to the principles of semantic |
- versioning (<a href="http://semver.org/">semver.org</a>). |
- </p> |
- <h2>Overview</h2> |
- <p> |
- The analysis server API is a bi-directional client-server |
- API. The API is independent of the transport mechanism used, but |
- is heavily influenced by a model in which sockets or character |
- streams are used to transport JSON-RPC encoded information. |
- </p> |
- <h3>Transport Mechanism</h3> |
- <p> |
- The characters passed to the server are expected to be encoded |
- using UTF-8. |
- </p> |
- <p> |
- When character streams are used as the transport, messages are |
- delineated by newlines. This means, in particular, that the JSON |
- encoding process must not introduce newlines within a |
- message. Note however that newlines are used in this document |
- for readability. |
- </p> |
- <p> |
- It is the client's responsibility to read output from the server to |
- avoid its blocking. |
- </p> |
- <p> |
- To ease interoperability with Lisp-based clients (which may not |
- be able to easily distinguish between empty lists, empty maps, |
- and null), client-to-server communication is allowed to replace |
- any instance of "<tt>{}</tt>" or "<tt>[]</tt>" with null. The |
- server will always properly represent empty lists as |
- "<tt>[]</tt>" and empty maps as "<tt>{}</tt>". |
- </p> |
- <h3>Communication Structure</h3> |
- <p> |
- Clients can make a request of the server and the server will |
- provide a response for each request that it receives. While many |
- of the requests that can be made by a client are informational |
- in nature, we have chosen to always return a response so that |
- clients can know whether the request was received and was |
- correct. |
- </p> |
- <p> |
- There is no guarantee concerning the order in which responses |
- will be returned, but there is a guarantee that the server will |
- process requests in the order in which they are sent as long as |
- the transport mechanism also makes this guarantee. Responses can |
- be returned in an order that is different from the order in |
- which the requests were received because some requests take |
- longer to process than others. |
- </p> |
- <p> |
- Every request is required to have two fields and may have two |
- additional optional fields. The first required field is the ‘id’ |
- field, which is only used by the server to associate a response |
- with the request that generated the response. The second |
- required field is the ‘method’ field, which is used to determine |
- what the server is being requested to do. One optional field is |
- the ‘params’ field, whose structure is dependent on the method |
- being requested. The structure of this field is described with |
- each request for which it is required. The other optional field |
- is the 'clientRequestTime' field, which is a number indicating |
- the time at which the client made the request (milliseconds |
- since epoch). Providing clientRequestTime helps us track |
- how responsive analysis server is to client requests |
- and better address any issues that occur. |
- </p> |
- <p> |
- Every response has up to three fields. The first field is the |
- ‘id’ field, which is always present and whose value is the |
- identifier that was passed to the request that generated the |
- response. The second field is the ‘error’ field, which is only |
- present if an error was encountered while processing the |
- request. The third field is the ‘result’ field, whose structure |
- is dependent on the method being responded to, and is described |
- with each request that will produce it. |
- </p> |
- <p> |
- The server can also communicate to the clients by sending a |
- notification. The purpose of these notifications is to provide |
- information to clients as it becomes available rather than to |
- require that clients poll for it. Unless explicitly stated, all |
- notifications are designed to return the complete information |
- available at the time the notification is sent; clients are not |
- required to update previously communicated |
- results. Consequently, the server can and should return partial |
- results before all results are available. For example, the |
- syntactic errors for a file can be returned as soon as the |
- syntactic analysis is complete, and both syntactic and semantic |
- errors can be returned together at a later time. |
- </p> |
- <p> |
- Each notification has two fields. The first field is the ‘event’ |
- field, which identifies the kind of notification. The second |
- field is the ‘params’ field, whose structure is dependent on the |
- kind of notification being sent. The structure of this field is |
- described with each notification. |
- </p> |
- <p> |
- In order to be backward compatible, clients should ignore fields that were |
- not specified in the version of the API on which they were based. Clients |
- should also use the server.getVersion request to test that the version of |
- the server supports an API before using it. |
- </p> |
- <h3>Eventual Consistency</h3> |
- <p> |
- The analysis server satisfies requests under the principle of |
- <a href="https://en.wikipedia.org/wiki/Eventual_consistency">eventual consistency</a>. |
- That is, in some cases it may return responses with the currently available |
- results while it's catching up with unprocessed changes. |
- </p> |
- <h3>Domains</h3> |
- <p> |
- For convenience, the API is divided into domains. Each domain is specified |
- in a separate section below. The specifications of the API’s refer to data |
- structures beyond the standard JSON primitives. These data structures are |
- documented in the section titled <a href="#types">Types</a>. |
- </p> |
- <toc></toc> |
- <h3>Command-line Arguments</h3> |
- <p> |
- The command-line arguments that can be passed to the server. |
- </p> |
- <h4>Options</h4> |
- <blockquote> |
- <dl> |
- <dt>--client-id</dt> |
- <dd> |
+<head> |
+ <meta charset="UTF-8"/> |
+ <title>Analysis Server API Specification</title> |
+</head> |
+<body> |
+<h1>Analysis Server API Specification</h1> |
+<h1 style="color:#999999">Version |
+ <version>1.18.1</version> |
+</h1> |
+<p> |
+ This document contains a specification of the API provided by the |
+ analysis server. The API in this document is currently under |
+ development. Changes to the API will be accompanied by an update to the |
+ protocol version number according to the principles of semantic |
+ versioning (<a href="http://semver.org/">semver.org</a>). |
+</p> |
+<h2>Overview</h2> |
+<p> |
+ The analysis server API is a bi-directional client-server |
+ API. The API is independent of the transport mechanism used, but |
+ is heavily influenced by a model in which sockets or character |
+ streams are used to transport JSON-RPC encoded information. |
+</p> |
+<h3>Transport Mechanism</h3> |
+<p> |
+ The characters passed to the server are expected to be encoded |
+ using UTF-8. |
+</p> |
+<p> |
+ When character streams are used as the transport, messages are |
+ delineated by newlines. This means, in particular, that the JSON |
+ encoding process must not introduce newlines within a |
+ message. Note however that newlines are used in this document |
+ for readability. |
+</p> |
+<p> |
+ It is the client's responsibility to read output from the server to |
+ avoid its blocking. |
+</p> |
+<p> |
+ To ease interoperability with Lisp-based clients (which may not |
+ be able to easily distinguish between empty lists, empty maps, |
+ and null), client-to-server communication is allowed to replace |
+ any instance of "<tt>{}</tt>" or "<tt>[]</tt>" with null. The |
+ server will always properly represent empty lists as |
+ "<tt>[]</tt>" and empty maps as "<tt>{}</tt>". |
+</p> |
+<h3>Communication Structure</h3> |
+<p> |
+ Clients can make a request of the server and the server will |
+ provide a response for each request that it receives. While many |
+ of the requests that can be made by a client are informational |
+ in nature, we have chosen to always return a response so that |
+ clients can know whether the request was received and was |
+ correct. |
+</p> |
+<p> |
+ There is no guarantee concerning the order in which responses |
+ will be returned, but there is a guarantee that the server will |
+ process requests in the order in which they are sent as long as |
+ the transport mechanism also makes this guarantee. Responses can |
+ be returned in an order that is different from the order in |
+ which the requests were received because some requests take |
+ longer to process than others. |
+</p> |
+<p> |
+ Every request is required to have two fields and may have two |
+ additional optional fields. The first required field is the ‘id’ |
+ field, which is only used by the server to associate a response |
+ with the request that generated the response. The second |
+ required field is the ‘method’ field, which is used to determine |
+ what the server is being requested to do. One optional field is |
+ the ‘params’ field, whose structure is dependent on the method |
+ being requested. The structure of this field is described with |
+ each request for which it is required. The other optional field |
+ is the 'clientRequestTime' field, which is a number indicating |
+ the time at which the client made the request (milliseconds |
+ since epoch). Providing clientRequestTime helps us track |
+ how responsive analysis server is to client requests |
+ and better address any issues that occur. |
+</p> |
+<p> |
+ Every response has up to three fields. The first field is the |
+ ‘id’ field, which is always present and whose value is the |
+ identifier that was passed to the request that generated the |
+ response. The second field is the ‘error’ field, which is only |
+ present if an error was encountered while processing the |
+ request. The third field is the ‘result’ field, whose structure |
+ is dependent on the method being responded to, and is described |
+ with each request that will produce it. |
+</p> |
+<p> |
+ The server can also communicate to the clients by sending a |
+ notification. The purpose of these notifications is to provide |
+ information to clients as it becomes available rather than to |
+ require that clients poll for it. Unless explicitly stated, all |
+ notifications are designed to return the complete information |
+ available at the time the notification is sent; clients are not |
+ required to update previously communicated |
+ results. Consequently, the server can and should return partial |
+ results before all results are available. For example, the |
+ syntactic errors for a file can be returned as soon as the |
+ syntactic analysis is complete, and both syntactic and semantic |
+ errors can be returned together at a later time. |
+</p> |
+<p> |
+ Each notification has two fields. The first field is the ‘event’ |
+ field, which identifies the kind of notification. The second |
+ field is the ‘params’ field, whose structure is dependent on the |
+ kind of notification being sent. The structure of this field is |
+ described with each notification. |
+</p> |
+<p> |
+ In order to be backward compatible, clients should ignore fields that were |
+ not specified in the version of the API on which they were based. Clients |
+ should also use the server.getVersion request to test that the version of |
+ the server supports an API before using it. |
+</p> |
+<h3>Eventual Consistency</h3> |
+<p> |
+ The analysis server satisfies requests under the principle of |
+ <a href="https://en.wikipedia.org/wiki/Eventual_consistency">eventual |
+ consistency</a>. |
+ That is, in some cases it may return responses with the currently available |
+ results while it's catching up with unprocessed changes. |
+</p> |
+<h3>Domains</h3> |
+<p> |
+ For convenience, the API is divided into domains. Each domain is specified |
+ in a separate section below. The specifications of the API’s refer to data |
+ structures beyond the standard JSON primitives. These data structures are |
+ documented in the section titled <a href="#types">Types</a>. |
+</p> |
+<toc></toc> |
+<h3>Command-line Arguments</h3> |
+<p> |
+ The command-line arguments that can be passed to the server. |
+</p> |
+<h4>Options</h4> |
+<blockquote> |
+ <dl> |
+ <dt>--client-id</dt> |
+ <dd> |
<p> |
- Specifies an identifier associated with the client. Used when |
- generating error reports. |
+ Specifies an identifier associated with the client. Used when |
+ generating error reports. |
</p> |
<p> |
- Clients are strongly encouraged to provide this information in |
- order to improve the quality of information that can be provided |
- to them. |
+ Clients are strongly encouraged to provide this information in |
+ order to improve the quality of information that can be provided |
+ to them. |
</p> |
- </dd> |
- </dl> |
- <dl> |
- <dt>--client-version</dt> |
- <dd> |
+ </dd> |
+ </dl> |
+ <dl> |
+ <dt>--client-version</dt> |
+ <dd> |
<p> |
- Specifies the version of the client that is communicating with |
- the server. Used when generating error reports. |
+ Specifies the version of the client that is communicating with |
+ the server. Used when generating error reports. |
</p> |
<p> |
Clients are strongly encouraged to provide this information in |
order to improve the quality of information that can be provided |
to them. |
</p> |
- </dd> |
- </dl> |
- <dl> |
- <dt class="deprecated">--no-error-notification</dt> |
- <dd> |
- <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
- Disable notifications about errors (see analysis.error). If this |
- flag is not specified then notifications will be sent for all |
- errors produced for all files in the actual analysis roots. |
- </dd> |
- </dl> |
- <dl> |
- <dt class="deprecated">--no-index</dt> |
- <dd> |
- <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
- This flag used to disable the server from generating an index, but now |
- it has no effect. |
- </dd> |
- </dl> |
- <dl> |
- <dt class="deprecated">--file-read-mode</dt> |
- <dd> |
- <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
- An enumeration of the ways files can be read from disk. Some clients |
- normalize end of line characters which would make the file offset and |
- range information incorrect. The default option is <tt>as-is</tt>, but |
- can also be set to <tt>normalize-eol-always</tt>. The default option |
- (<tt>as-is</tt>) reads files as they are on disk. The |
- <tt>normalize-eol-always</tt> option does the following: |
- <ul> |
- <li>'\r\n' is converted to '\n';</li> |
- <li>'\r' by itself is converted to '\n';</li> |
- <li>this happens regardless of the OS editor is running on.</li> |
- </ul> |
- </dd> |
- </dl> |
- </blockquote> |
- <domains></domains> |
- <domain name="server"> |
- <p> |
- The server domain contains API’s related to the execution of |
- the server. |
- </p> |
- <request method="getVersion"> |
- <p>Return the version number of the analysis server.</p> |
- <result> |
- <field name="version"> |
- <ref>String</ref> |
- <p>The version number of the analysis server.</p> |
- </field> |
- </result> |
- </request> |
- <request method="shutdown"> |
+ </dd> |
+ </dl> |
+ <dl> |
+ <dt class="deprecated">--no-error-notification</dt> |
+ <dd> |
+ <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
+ Disable notifications about errors (see analysis.error). If this |
+ flag is not specified then notifications will be sent for all |
+ errors produced for all files in the actual analysis roots. |
+ </dd> |
+ </dl> |
+ <dl> |
+ <dt class="deprecated">--no-index</dt> |
+ <dd> |
+ <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
+ This flag used to disable the server from generating an index, but now |
+ it has no effect. |
+ </dd> |
+ </dl> |
+ <dl> |
+ <dt class="deprecated">--file-read-mode</dt> |
+ <dd> |
+ <p><b>Deprecated:</b> clients should no longer pass this option in</p> |
+ An enumeration of the ways files can be read from disk. Some clients |
+ normalize end of line characters which would make the file offset and |
+ range information incorrect. The default option is <tt>as-is</tt>, but |
+ can also be set to <tt>normalize-eol-always</tt>. The default option |
+ (<tt>as-is</tt>) reads files as they are on disk. The |
+ <tt>normalize-eol-always</tt> option does the following: |
+ <ul> |
+ <li>'\r\n' is converted to '\n';</li> |
+ <li>'\r' by itself is converted to '\n';</li> |
+ <li>this happens regardless of the OS editor is running on.</li> |
+ </ul> |
+ </dd> |
+ </dl> |
+</blockquote> |
+<domains></domains> |
+<domain name="server"> |
+ <p> |
+ The server domain contains API’s related to the execution of |
+ the server. |
+ </p> |
+ <request method="getVersion"> |
+ <p>Return the version number of the analysis server.</p> |
+ <result> |
+ <field name="version"> |
+ <ref>String</ref> |
+ <p>The version number of the analysis server.</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="shutdown"> |
+ <p> |
+ Cleanly shutdown the analysis server. Requests that are |
+ received after this request will not be processed. Requests |
+ that were received before this request, but for which a |
+ response has not yet been sent, will not be responded to. No |
+ further responses or notifications will be sent after the |
+ response to this request has been sent. |
+ </p> |
+ </request> |
+ <request method="setSubscriptions"> |
+ <p> |
+ Subscribe for services. All previous subscriptions are |
+ replaced by the given set of services. |
+ </p> |
+ <p> |
+ It is an error if any of the elements in the list are not |
+ valid services. If there is an error, then the current |
+ subscriptions will remain unchanged. |
+ </p> |
+ <params> |
+ <field name="subscriptions"> |
+ <list> |
+ <ref>ServerService</ref> |
+ </list> |
+ <p>A list of the services being subscribed to.</p> |
+ </field> |
+ </params> |
+ </request> |
+ <notification event="connected"> |
+ <p> |
+ Reports that the server is running. This notification is |
+ issued once after the server has started running but before |
+ any requests are processed to let the client know that it |
+ started correctly. |
+ </p> |
+ <p> |
+ It is not possible to subscribe to or unsubscribe from this |
+ notification. |
+ </p> |
+ <params> |
+ <field name="version"> |
+ <ref>String</ref> |
+ <p>The version number of the analysis server.</p> |
+ </field> |
+ <field name="pid"> |
+ <ref>int</ref> |
+ <p>The process id of the analysis server process.</p> |
+ </field> |
+ <field name="sessionId" optional="true"> |
+ <ref>String</ref> |
+ <p>The session id for this session.</p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="error"> |
+ <p> |
+ Reports that an unexpected error has occurred while |
+ executing the server. This notification is not used for |
+ problems with specific requests (which are returned as part |
+ of the response) but is used for exceptions that occur while |
+ performing other tasks, such as analysis or preparing |
+ notifications. |
+ </p> |
+ <p> |
+ It is not possible to subscribe to or unsubscribe from this |
+ notification. |
+ </p> |
+ <params> |
+ <field name="isFatal"> |
+ <ref>bool</ref> |
<p> |
- Cleanly shutdown the analysis server. Requests that are |
- received after this request will not be processed. Requests |
- that were received before this request, but for which a |
- response has not yet been sent, will not be responded to. No |
- further responses or notifications will be sent after the |
- response to this request has been sent. |
+ True if the error is a fatal error, meaning that the |
+ server will shutdown automatically after sending this |
+ notification. |
</p> |
- </request> |
- <request method="setSubscriptions"> |
+ </field> |
+ <field name="message"> |
+ <ref>String</ref> |
<p> |
- Subscribe for services. All previous subscriptions are |
- replaced by the given set of services. |
+ The error message indicating what kind of error was |
+ encountered. |
</p> |
+ </field> |
+ <field name="stackTrace"> |
+ <ref>String</ref> |
<p> |
- It is an error if any of the elements in the list are not |
- valid services. If there is an error, then the current |
- subscriptions will remain unchanged. |
+ The stack trace associated with the generation of the |
+ error, used for debugging the server. |
</p> |
- <params> |
- <field name="subscriptions"> |
- <list><ref>ServerService</ref></list> |
- <p>A list of the services being subscribed to.</p> |
- </field> |
- </params> |
- </request> |
- <notification event="connected"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="status"> |
+ <p> |
+ Reports the current status of the server. Parameters are |
+ omitted if there has been no change in the status |
+ represented by that parameter. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"STATUS"</tt> in |
+ the list of services passed in a server.setSubscriptions |
+ request. |
+ </p> |
+ <params> |
+ <field name="analysis" optional="true"> |
+ <ref>AnalysisStatus</ref> |
+ <p> |
+ The current status of analysis, including whether |
+ analysis is being performed and if so what is being |
+ analyzed. |
+ </p> |
+ </field> |
+ <field name="pub" optional="true"> |
+ <ref>PubStatus</ref> |
+ <p> |
+ The current status of pub execution, indicating whether we are |
+ currently running pub. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+</domain> |
+<domain name="analysis"> |
+ <p> |
+ The analysis domain contains API’s related to the analysis of |
+ files. |
+ </p> |
+ <request method="getErrors"> |
+ <p> |
+ Return the errors associated with the given file. If the |
+ errors for the given file have not yet been computed, or the |
+ most recently computed errors for the given file are out of |
+ date, then the response for this request will be delayed |
+ until they have been computed. If some or all of the errors |
+ for the file cannot be computed, then the subset of the |
+ errors that can be computed will be returned and the |
+ response will contain an error to indicate why the errors |
+ could not be computed. If the content of the file changes after this |
+ request was received but before a response could be sent, then an |
+ error of type <tt>CONTENT_MODIFIED</tt> will be generated. |
+ </p> |
+ <p> |
+ This request is intended to be used by clients that cannot |
+ asynchronously apply updated error information. Clients that |
+ <b>can</b> apply error information as it becomes available |
+ should use the information provided by the 'analysis.errors' |
+ notification. |
+ </p> |
+ <p> |
+ If a request is made for a file which does not exist, or |
+ which is not currently subject to analysis (e.g. because it |
+ is not associated with any analysis root specified to |
+ analysis.setAnalysisRoots), an error of type |
+ <tt>GET_ERRORS_INVALID_FILE</tt> will be generated. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file for which errors are being requested. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="errors"> |
+ <list> |
+ <ref>AnalysisError</ref> |
+ </list> |
+ <p> |
+ The errors associated with the file. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getHover"> |
+ <p> |
+ Return the hover information associate with the given |
+ location. If some or all of the hover information is not |
+ available at the time this request is processed the |
+ information will be omitted from the response. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file in which hover information is being requested. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset for which hover information is being requested. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="hovers"> |
+ <list> |
+ <ref>HoverInformation</ref> |
+ </list> |
+ <p> |
+ The hover information associated with the |
+ location. The list will be empty if no information |
+ could be determined for the location. The list can |
+ contain multiple items if the file is being analyzed |
+ in multiple contexts in conflicting ways (such as a |
+ part that is included in multiple libraries). |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getReachableSources"> |
+ <p> |
+ Return the transitive closure of reachable sources for a given file. |
+ </p> |
+ <p> |
+ If a request is made for a file which does not exist, or |
+ which is not currently subject to analysis (e.g. because it |
+ is not associated with any analysis root specified to |
+ analysis.setAnalysisRoots), an error of type |
+ <tt>GET_REACHABLE_SOURCES_INVALID_FILE</tt> will be generated. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file for which reachable source information is being requested. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="sources"> |
+ <map> |
+ <key> |
+ <ref>String</ref> |
+ </key> |
+ <value> |
+ <list> |
+ <ref>String</ref> |
+ </list> |
+ </value> |
+ </map> |
+ <p> |
+ A mapping from source URIs to directly reachable source URIs. For |
+ example, |
+ a file "foo.dart" that imports "bar.dart" would have the corresponding |
+ mapping |
+ { "file:///foo.dart" : ["file:///bar.dart"] }. If "bar.dart" has |
+ further imports |
+ (or exports) there will be a mapping from the URI "file:///bar.dart" |
+ to them. |
+ To check if a specific URI is reachable from a given file, clients can |
+ check |
+ for its presence in the resulting key set. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getLibraryDependencies"> |
+ <p> |
+ Return library dependency information for use in client-side indexing |
+ and package URI resolution. |
+ </p> |
+ <p> |
+ Clients that are only using the libraries field should consider using the |
+ analyzedFiles notification instead. |
+ </p> |
+ <result> |
+ <field name="libraries"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the paths of library elements referenced by |
+ files in existing analysis roots. |
+ </p> |
+ </field> |
+ <field name="packageMap"> |
+ <map> |
+ <key> |
+ <ref>String</ref> |
+ </key> |
+ <value> |
+ <map> |
+ <key> |
+ <ref>String</ref> |
+ </key> |
+ <value> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ </value> |
+ </map> |
+ </value> |
+ </map> |
<p> |
- Reports that the server is running. This notification is |
- issued once after the server has started running but before |
- any requests are processed to let the client know that it |
- started correctly. |
+ A mapping from context source roots to package maps which map |
+ package names to source directories for use in client-side |
+ package URI resolution. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getNavigation"> |
+ <p> |
+ Return the navigation information associated with the given region of |
+ the given file. If the navigation information for the given file has |
+ not yet been computed, or the most recently computed navigation |
+ information for the given file is out of date, then the response for |
+ this request will be delayed until it has been computed. If the |
+ content of the file changes after this request was received but before |
+ a response could be sent, then an error of type |
+ <tt>CONTENT_MODIFIED</tt> will be generated. |
+ </p> |
+ <p> |
+ If a navigation region overlaps (but extends either before or after) |
+ the given region of the file it will be included in the result. This |
+ means that it is theoretically possible to get the same navigation |
+ region in response to multiple requests. Clients can avoid this by |
+ always choosing a region that starts at the beginning of a line and |
+ ends at the end of a (possibly different) line in the file. |
+ </p> |
+ <p> |
+ If a request is made for a file which does not exist, or |
+ which is not currently subject to analysis (e.g. because it |
+ is not associated with any analysis root specified to |
+ analysis.setAnalysisRoots), an error of type |
+ <tt>GET_NAVIGATION_INVALID_FILE</tt> will be generated. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file in which navigation information is being requested. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the region for which navigation information is being |
+ requested. |
+ </p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the region for which navigation information is being |
+ requested. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="files"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the paths of files that are referenced by the navigation |
+ targets. |
+ </p> |
+ </field> |
+ <field name="targets"> |
+ <list> |
+ <ref>NavigationTarget</ref> |
+ </list> |
+ <p> |
+ A list of the navigation targets that are referenced by the |
+ navigation regions. |
+ </p> |
+ </field> |
+ <field name="regions"> |
+ <list> |
+ <ref>NavigationRegion</ref> |
+ </list> |
+ <p> |
+ A list of the navigation regions within the requested region of |
+ the file. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="reanalyze"> |
+ <p> |
+ Force the re-analysis of everything contained in the specified |
+ analysis roots. This will cause all previously computed analysis |
+ results to be discarded and recomputed, and will cause all subscribed |
+ notifications to be re-sent. |
+ </p> |
+ <p> |
+ If no analysis roots are provided, then all current analysis roots |
+ will be re-analyzed. If an empty list of analysis roots is provided, |
+ then nothing will be re-analyzed. If the list contains one or more |
+ paths that are not currently analysis roots, then an error of type |
+ <tt>INVALID_ANALYSIS_ROOT</tt> will be generated. |
+ </p> |
+ <params> |
+ <field name="roots" optional="true"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the analysis roots that are to be re-analyzed. |
+ </p> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="setAnalysisRoots"> |
+ <p> |
+ Sets the root paths used to determine which files to analyze. The set |
+ of files to be analyzed are all of the files in one of the root paths |
+ that are not either explicitly or implicitly excluded. A file is |
+ explicitly excluded if it is in one of the excluded paths. A file is |
+ implicitly excluded if it is in a subdirectory of one of the root |
+ paths where the name of the subdirectory starts with a period (that |
+ is, a hidden directory). |
+ </p> |
+ <p> |
+ Note that this request determines the set of requested |
+ analysis roots. The actual set of analysis roots at any |
+ given time is the intersection of this set with the set of |
+ files and directories actually present on the |
+ filesystem. When the filesystem changes, the actual set of |
+ analysis roots is automatically updated, but the set of |
+ requested analysis roots is unchanged. This means that if |
+ the client sets an analysis root before the root becomes |
+ visible to server in the filesystem, there is no error; once |
+ the server sees the root in the filesystem it will start |
+ analyzing it. Similarly, server will stop analyzing files |
+ that are removed from the file system but they will remain |
+ in the set of requested roots. |
+ </p> |
+ <p> |
+ If an included path represents a file, then server will look |
+ in the directory containing the file for a pubspec.yaml |
+ file. If none is found, then the parents of the directory |
+ will be searched until such a file is found or the root of |
+ the file system is reached. If such a file is found, it will |
+ be used to resolve package: URI’s within the file. |
+ </p> |
+ <params> |
+ <field name="included"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the files and directories that should be |
+ analyzed. |
+ </p> |
+ </field> |
+ <field name="excluded"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the files and directories within the |
+ included directories that should not be analyzed. |
+ </p> |
+ </field> |
+ <field name="packageRoots" optional="true"> |
+ <map> |
+ <key> |
+ <ref>FilePath</ref> |
+ </key> |
+ <value> |
+ <ref>FilePath</ref> |
+ </value> |
+ </map> |
<p> |
- It is not possible to subscribe to or unsubscribe from this |
- notification. |
- </p> |
- <params> |
- <field name="version"> |
- <ref>String</ref> |
- <p>The version number of the analysis server.</p> |
- </field> |
- <field name="pid"> |
- <ref>int</ref> |
- <p>The process id of the analysis server process.</p> |
- </field> |
- <field name="sessionId" optional="true"> |
- <ref>String</ref> |
- <p>The session id for this session.</p> |
- </field> |
- </params> |
- </notification> |
- <notification event="error"> |
- <p> |
- Reports that an unexpected error has occurred while |
- executing the server. This notification is not used for |
- problems with specific requests (which are returned as part |
- of the response) but is used for exceptions that occur while |
- performing other tasks, such as analysis or preparing |
- notifications. |
- </p> |
- <p> |
- It is not possible to subscribe to or unsubscribe from this |
- notification. |
+ A mapping from source directories to package roots |
+ that should override the normal package: URI resolution |
+ mechanism. |
</p> |
- <params> |
- <field name="isFatal"> |
- <ref>bool</ref> |
- <p> |
- True if the error is a fatal error, meaning that the |
- server will shutdown automatically after sending this |
- notification. |
- </p> |
- </field> |
- <field name="message"> |
- <ref>String</ref> |
- <p> |
- The error message indicating what kind of error was |
- encountered. |
- </p> |
- </field> |
- <field name="stackTrace"> |
- <ref>String</ref> |
- <p> |
- The stack trace associated with the generation of the |
- error, used for debugging the server. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="status"> |
<p> |
- Reports the current status of the server. Parameters are |
- omitted if there has been no change in the status |
- represented by that parameter. |
+ If a package root is a directory, then |
+ the analyzer will behave as though the associated |
+ source directory in the map contains a special |
+ pubspec.yaml file which resolves any package: URI to the |
+ corresponding path within that package root directory. The |
+ effect is the same as specifying the package root directory as |
+ a "--package_root" parameter to the Dart VM when |
+ executing any Dart file inside the source directory. |
</p> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"STATUS"</tt> in |
- the list of services passed in a server.setSubscriptions |
- request. |
- </p> |
- <params> |
- <field name="analysis" optional="true"> |
- <ref>AnalysisStatus</ref> |
- <p> |
- The current status of analysis, including whether |
- analysis is being performed and if so what is being |
- analyzed. |
- </p> |
- </field> |
- <field name="pub" optional="true"> |
- <ref>PubStatus</ref> |
- <p> |
- The current status of pub execution, indicating whether we are |
- currently running pub. |
- </p> |
- </field> |
- </params> |
- </notification> |
- </domain> |
- <domain name="analysis"> |
- <p> |
- The analysis domain contains API’s related to the analysis of |
- files. |
- </p> |
- <request method="getErrors"> |
- <p> |
- Return the errors associated with the given file. If the |
- errors for the given file have not yet been computed, or the |
- most recently computed errors for the given file are out of |
- date, then the response for this request will be delayed |
- until they have been computed. If some or all of the errors |
- for the file cannot be computed, then the subset of the |
- errors that can be computed will be returned and the |
- response will contain an error to indicate why the errors |
- could not be computed. If the content of the file changes after this |
- request was received but before a response could be sent, then an |
- error of type <tt>CONTENT_MODIFIED</tt> will be generated. |
- </p> |
- <p> |
- This request is intended to be used by clients that cannot |
- asynchronously apply updated error information. Clients that |
- <b>can</b> apply error information as it becomes available |
- should use the information provided by the 'analysis.errors' |
- notification. |
+ If a package root is a file, then the analyzer |
+ will behave as though that file is a ".packages" file in the |
+ source directory. The effect is the same as specifying the file |
+ as a "--packages" parameter to the Dart VM when |
+ executing any Dart file inside the source directory. |
</p> |
<p> |
- If a request is made for a file which does not exist, or |
- which is not currently subject to analysis (e.g. because it |
- is not associated with any analysis root specified to |
- analysis.setAnalysisRoots), an error of type |
- <tt>GET_ERRORS_INVALID_FILE</tt> will be generated. |
+ Files in any directories that are not overridden by this |
+ mapping have their package: URI's resolved using the |
+ normal pubspec.yaml mechanism. If this field is absent, |
+ or the empty map is specified, that indicates that the |
+ normal pubspec.yaml mechanism should always be used. |
</p> |
- <params> |
- <field name="file"> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="setGeneralSubscriptions"> |
+ <p> |
+ Subscribe for general services (that is, services that are not |
+ specific to individual files). All previous subscriptions are replaced |
+ by the given set of services. |
+ </p> |
+ <p> |
+ It is an error if any of the elements in the list are not valid |
+ services. If there is an error, then the current subscriptions will |
+ remain unchanged. |
+ </p> |
+ <params> |
+ <field name="subscriptions"> |
+ <list> |
+ <ref>GeneralAnalysisService</ref> |
+ </list> |
+ <p>A list of the services being subscribed to.</p> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="setPriorityFiles"> |
+ <p> |
+ Set the priority files to the files in the given list. A |
+ priority file is a file that is given priority when |
+ scheduling which analysis work to do first. The list |
+ typically contains those files that are visible to the user |
+ and those for which analysis results will have the biggest |
+ impact on the user experience. The order of the files within |
+ the list is significant: the first file will be given higher |
+ priority than the second, the second higher priority than |
+ the third, and so on. |
+ </p> |
+ <p> |
+ Note that this request determines the set of requested |
+ priority files. The actual set of priority files is the |
+ intersection of the requested set of priority files with the |
+ set of files currently subject to analysis. (See |
+ analysis.setSubscriptions for a description of files that |
+ are subject to analysis.) |
+ </p> |
+ <p> |
+ If a requested priority file is a directory it is ignored, |
+ but remains in the set of requested priority files so that |
+ if it later becomes a file it can be included in the set of |
+ actual priority files. |
+ </p> |
+ <params> |
+ <field name="files"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ The files that are to be a priority for analysis. |
+ </p> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="setSubscriptions"> |
+ <p> |
+ Subscribe for services that are specific to individual files. |
+ All previous subscriptions are replaced by the current set of |
+ subscriptions. If a given service is not included as a key in the map |
+ then no files will be subscribed to the service, exactly as if the |
+ service had been included in the map with an explicit empty list of |
+ files. |
+ </p> |
+ <p> |
+ Note that this request determines the set of requested |
+ subscriptions. The actual set of subscriptions at any given |
+ time is the intersection of this set with the set of files |
+ currently subject to analysis. The files currently subject |
+ to analysis are the set of files contained within an actual |
+ analysis root but not excluded, plus all of the files |
+ transitively reachable from those files via import, export |
+ and part directives. (See analysis.setAnalysisRoots for an |
+ explanation of how the actual analysis roots are |
+ determined.) When the actual analysis roots change, the |
+ actual set of subscriptions is automatically updated, but |
+ the set of requested subscriptions is unchanged. |
+ </p> |
+ <p> |
+ If a requested subscription is a directory it is ignored, |
+ but remains in the set of requested subscriptions so that if |
+ it later becomes a file it can be included in the set of |
+ actual subscriptions. |
+ </p> |
+ <p> |
+ It is an error if any of the keys in the map are not valid |
+ services. If there is an error, then the existing |
+ subscriptions will remain unchanged. |
+ </p> |
+ <params> |
+ <field name="subscriptions"> |
+ <map> |
+ <key> |
+ <ref>AnalysisService</ref> |
+ </key> |
+ <value> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ </value> |
+ </map> |
+ <p> |
+ A table mapping services to a list of the files being |
+ subscribed to the service. |
+ </p> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="updateContent"> |
+ <p> |
+ Update the content of one or more files. Files that were |
+ previously updated but not included in this update remain |
+ unchanged. This effectively represents an overlay of the |
+ filesystem. The files whose content is overridden are |
+ therefore seen by server as being files with the given |
+ content, even if the files do not exist on the filesystem or |
+ if the file path represents the path to a directory on the |
+ filesystem. |
+ </p> |
+ <params> |
+ <field name="files"> |
+ <map> |
+ <key> |
<ref>FilePath</ref> |
- <p> |
- The file for which errors are being requested. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="errors"> |
- <list><ref>AnalysisError</ref></list> |
- <p> |
- The errors associated with the file. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getHover"> |
+ </key> |
+ <value> |
+ <union field="type"> |
+ <ref>AddContentOverlay</ref> |
+ <ref>ChangeContentOverlay</ref> |
+ <ref>RemoveContentOverlay</ref> |
+ </union> |
+ </value> |
+ </map> |
+ <p> |
+ A table mapping the files whose content has changed to a |
+ description of the content change. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ </result> |
+ </request> |
+ <request method="updateOptions" deprecated="true"> |
+ <p><b>Deprecated:</b> all of the options can be set by users in |
+ an analysis options file.</p> |
+ <p> |
+ Update the options controlling analysis based on the given |
+ set of options. Any options that are not included in the |
+ analysis options will not be changed. If there are options |
+ in the analysis options that are not valid, they will be |
+ silently ignored. |
+ </p> |
+ <params> |
+ <field name="options"> |
+ <ref>AnalysisOptions</ref> |
<p> |
- Return the hover information associate with the given |
- location. If some or all of the hover information is not |
- available at the time this request is processed the |
- information will be omitted from the response. |
+ The options that are to be used to control analysis. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file in which hover information is being requested. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset for which hover information is being requested. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="hovers"> |
- <list><ref>HoverInformation</ref></list> |
- <p> |
- The hover information associated with the |
- location. The list will be empty if no information |
- could be determined for the location. The list can |
- contain multiple items if the file is being analyzed |
- in multiple contexts in conflicting ways (such as a |
- part that is included in multiple libraries). |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getReachableSources"> |
+ </field> |
+ </params> |
+ </request> |
+ <notification event="analyzedFiles"> |
+ <p> |
+ Reports the paths of the files that are being analyzed. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients can |
+ subscribe by including the value <tt>"ANALYZED_FILES"</tt> in the list |
+ of services passed in an analysis.setGeneralSubscriptions request. |
+ </p> |
+ <params> |
+ <field name="directories"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the paths of the files that are being analyzed. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="errors"> |
+ <p> |
+ Reports the errors associated with a given file. The set of |
+ errors included in the notification is always a complete |
+ list that supersedes any previously reported errors. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Return the transitive closure of reachable sources for a given file. |
+ The file containing the errors. |
</p> |
+ </field> |
+ <field name="errors"> |
+ <list> |
+ <ref>AnalysisError</ref> |
+ </list> |
<p> |
- If a request is made for a file which does not exist, or |
- which is not currently subject to analysis (e.g. because it |
- is not associated with any analysis root specified to |
- analysis.setAnalysisRoots), an error of type |
- <tt>GET_REACHABLE_SOURCES_INVALID_FILE</tt> will be generated. |
+ The errors contained in the file. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file for which reachable source information is being requested. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="sources"> |
- <map> |
- <key><ref>String</ref></key> |
- <value><list><ref>String</ref></list></value> |
- </map> |
- <p> |
- A mapping from source URIs to directly reachable source URIs. For example, |
- a file "foo.dart" that imports "bar.dart" would have the corresponding mapping |
- { "file:///foo.dart" : ["file:///bar.dart"] }. If "bar.dart" has further imports |
- (or exports) there will be a mapping from the URI "file:///bar.dart" to them. |
- To check if a specific URI is reachable from a given file, clients can check |
- for its presence in the resulting key set. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getLibraryDependencies"> |
- <p> |
- Return library dependency information for use in client-side indexing |
- and package URI resolution. |
- </p> |
- <p> |
- Clients that are only using the libraries field should consider using the |
- analyzedFiles notification instead. |
- </p> |
- <result> |
- <field name="libraries"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the paths of library elements referenced by |
- files in existing analysis roots. |
- </p> |
- </field> |
- <field name="packageMap"> |
- <map> |
- <key><ref>String</ref></key> |
- <value> |
- <map> |
- <key><ref>String</ref></key> |
- <value><list><ref>FilePath</ref></list></value> |
- </map> |
- </value> |
- </map> |
- <p> |
- A mapping from context source roots to package maps which map |
- package names to source directories for use in client-side |
- package URI resolution. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getNavigation"> |
- <p> |
- Return the navigation information associated with the given region of |
- the given file. If the navigation information for the given file has |
- not yet been computed, or the most recently computed navigation |
- information for the given file is out of date, then the response for |
- this request will be delayed until it has been computed. If the |
- content of the file changes after this request was received but before |
- a response could be sent, then an error of type |
- <tt>CONTENT_MODIFIED</tt> will be generated. |
- </p> |
- <p> |
- If a navigation region overlaps (but extends either before or after) |
- the given region of the file it will be included in the result. This |
- means that it is theoretically possible to get the same navigation |
- region in response to multiple requests. Clients can avoid this by |
- always choosing a region that starts at the beginning of a line and |
- ends at the end of a (possibly different) line in the file. |
- </p> |
- <p> |
- If a request is made for a file which does not exist, or |
- which is not currently subject to analysis (e.g. because it |
- is not associated with any analysis root specified to |
- analysis.setAnalysisRoots), an error of type |
- <tt>GET_NAVIGATION_INVALID_FILE</tt> will be generated. |
- </p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file in which navigation information is being requested. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region for which navigation information is being |
- requested. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region for which navigation information is being |
- requested. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="files"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the paths of files that are referenced by the navigation |
- targets. |
- </p> |
- </field> |
- <field name="targets"> |
- <list><ref>NavigationTarget</ref></list> |
- <p> |
- A list of the navigation targets that are referenced by the |
- navigation regions. |
- </p> |
- </field> |
- <field name="regions"> |
- <list><ref>NavigationRegion</ref></list> |
- <p> |
- A list of the navigation regions within the requested region of |
- the file. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="reanalyze"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="flushResults"> |
+ <p> |
+ Reports that any analysis results that were previously |
+ associated with the given files should be considered to be |
+ invalid because those files are no longer being analyzed, |
+ either because the analysis root that contained it is no |
+ longer being analyzed or because the file no longer exists. |
+ </p> |
+ <p> |
+ If a file is included in this notification and at some later |
+ time a notification with results for the file is received, |
+ clients should assume that the file is once again being |
+ analyzed and the information should be processed. |
+ </p> |
+ <p> |
+ It is not possible to subscribe to or unsubscribe from this |
+ notification. |
+ </p> |
+ <params> |
+ <field name="files"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ The files that are no longer being analyzed. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="folding"> |
+ <p> |
+ Reports the folding regions associated with a given |
+ file. Folding regions can be nested, but will not be |
+ overlapping. Nesting occurs when a foldable element, such as |
+ a method, is nested inside another foldable element such as |
+ a class. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"FOLDING"</tt> in |
+ the list of services passed in an analysis.setSubscriptions |
+ request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Force the re-analysis of everything contained in the specified |
- analysis roots. This will cause all previously computed analysis |
- results to be discarded and recomputed, and will cause all subscribed |
- notifications to be re-sent. |
+ The file containing the folding regions. |
</p> |
+ </field> |
+ <field name="regions"> |
+ <list> |
+ <ref>FoldingRegion</ref> |
+ </list> |
<p> |
- If no analysis roots are provided, then all current analysis roots |
- will be re-analyzed. If an empty list of analysis roots is provided, |
- then nothing will be re-analyzed. If the list contains one or more |
- paths that are not currently analysis roots, then an error of type |
- <tt>INVALID_ANALYSIS_ROOT</tt> will be generated. |
+ The folding regions contained in the file. |
</p> |
- <params> |
- <field name="roots" optional="true"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the analysis roots that are to be re-analyzed. |
- </p> |
- </field> |
- </params> |
- </request> |
- <request method="setAnalysisRoots"> |
- <p> |
- Sets the root paths used to determine which files to analyze. The set |
- of files to be analyzed are all of the files in one of the root paths |
- that are not either explicitly or implicitly excluded. A file is |
- explicitly excluded if it is in one of the excluded paths. A file is |
- implicitly excluded if it is in a subdirectory of one of the root |
- paths where the name of the subdirectory starts with a period (that |
- is, a hidden directory). |
- </p> |
- <p> |
- Note that this request determines the set of requested |
- analysis roots. The actual set of analysis roots at any |
- given time is the intersection of this set with the set of |
- files and directories actually present on the |
- filesystem. When the filesystem changes, the actual set of |
- analysis roots is automatically updated, but the set of |
- requested analysis roots is unchanged. This means that if |
- the client sets an analysis root before the root becomes |
- visible to server in the filesystem, there is no error; once |
- the server sees the root in the filesystem it will start |
- analyzing it. Similarly, server will stop analyzing files |
- that are removed from the file system but they will remain |
- in the set of requested roots. |
- </p> |
- <p> |
- If an included path represents a file, then server will look |
- in the directory containing the file for a pubspec.yaml |
- file. If none is found, then the parents of the directory |
- will be searched until such a file is found or the root of |
- the file system is reached. If such a file is found, it will |
- be used to resolve package: URI’s within the file. |
- </p> |
- <params> |
- <field name="included"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the files and directories that should be |
- analyzed. |
- </p> |
- </field> |
- <field name="excluded"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the files and directories within the |
- included directories that should not be analyzed. |
- </p> |
- </field> |
- <field name="packageRoots" optional="true"> |
- <map> |
- <key><ref>FilePath</ref></key> |
- <value><ref>FilePath</ref></value> |
- </map> |
- <p> |
- A mapping from source directories to package roots |
- that should override the normal package: URI resolution |
- mechanism. |
- </p> |
- <p> |
- If a package root is a directory, then |
- the analyzer will behave as though the associated |
- source directory in the map contains a special |
- pubspec.yaml file which resolves any package: URI to the |
- corresponding path within that package root directory. The |
- effect is the same as specifying the package root directory as |
- a "--package_root" parameter to the Dart VM when |
- executing any Dart file inside the source directory. |
- </p> |
- <p> |
- If a package root is a file, then the analyzer |
- will behave as though that file is a ".packages" file in the |
- source directory. The effect is the same as specifying the file |
- as a "--packages" parameter to the Dart VM when |
- executing any Dart file inside the source directory. |
- </p> |
- <p> |
- Files in any directories that are not overridden by this |
- mapping have their package: URI's resolved using the |
- normal pubspec.yaml mechanism. If this field is absent, |
- or the empty map is specified, that indicates that the |
- normal pubspec.yaml mechanism should always be used. |
- </p> |
- </field> |
- </params> |
- </request> |
- <request method="setGeneralSubscriptions"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="highlights"> |
+ <p> |
+ Reports the highlight regions associated with a given file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"HIGHLIGHTS"</tt> |
+ in the list of services passed in an |
+ analysis.setSubscriptions request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the highlight regions. |
+ </p> |
+ </field> |
+ <field name="regions"> |
+ <list> |
+ <ref>HighlightRegion</ref> |
+ </list> |
+ <p> |
+ The highlight regions contained in the file. Each |
+ highlight region represents a particular syntactic or |
+ semantic meaning associated with some range. Note that |
+ the highlight regions that are returned can overlap |
+ other highlight regions if there is more than one |
+ meaning associated with a particular region. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="implemented"> |
+ <p> |
+ Reports the classes that are implemented or extended and |
+ class members that are implemented or overridden in a file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"IMPLEMENTED"</tt> in |
+ the list of services passed in an analysis.setSubscriptions |
+ request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Subscribe for general services (that is, services that are not |
- specific to individual files). All previous subscriptions are replaced |
- by the given set of services. |
+ The file with which the implementations are associated. |
</p> |
+ </field> |
+ <field name="classes"> |
+ <list> |
+ <ref>ImplementedClass</ref> |
+ </list> |
<p> |
- It is an error if any of the elements in the list are not valid |
- services. If there is an error, then the current subscriptions will |
- remain unchanged. |
+ The classes defined in the file that are implemented or extended. |
</p> |
- <params> |
- <field name="subscriptions"> |
- <list><ref>GeneralAnalysisService</ref></list> |
- <p>A list of the services being subscribed to.</p> |
- </field> |
- </params> |
- </request> |
- <request method="setPriorityFiles"> |
- <p> |
- Set the priority files to the files in the given list. A |
- priority file is a file that is given priority when |
- scheduling which analysis work to do first. The list |
- typically contains those files that are visible to the user |
- and those for which analysis results will have the biggest |
- impact on the user experience. The order of the files within |
- the list is significant: the first file will be given higher |
- priority than the second, the second higher priority than |
- the third, and so on. |
- </p> |
- <p> |
- Note that this request determines the set of requested |
- priority files. The actual set of priority files is the |
- intersection of the requested set of priority files with the |
- set of files currently subject to analysis. (See |
- analysis.setSubscriptions for a description of files that |
- are subject to analysis.) |
- </p> |
- <p> |
- If a requested priority file is a directory it is ignored, |
- but remains in the set of requested priority files so that |
- if it later becomes a file it can be included in the set of |
- actual priority files. |
- </p> |
- <params> |
- <field name="files"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- The files that are to be a priority for analysis. |
- </p> |
- </field> |
- </params> |
- </request> |
- <request method="setSubscriptions"> |
- <p> |
- Subscribe for services that are specific to individual files. |
- All previous subscriptions are replaced by the current set of |
- subscriptions. If a given service is not included as a key in the map |
- then no files will be subscribed to the service, exactly as if the |
- service had been included in the map with an explicit empty list of |
- files. |
- </p> |
- <p> |
- Note that this request determines the set of requested |
- subscriptions. The actual set of subscriptions at any given |
- time is the intersection of this set with the set of files |
- currently subject to analysis. The files currently subject |
- to analysis are the set of files contained within an actual |
- analysis root but not excluded, plus all of the files |
- transitively reachable from those files via import, export |
- and part directives. (See analysis.setAnalysisRoots for an |
- explanation of how the actual analysis roots are |
- determined.) When the actual analysis roots change, the |
- actual set of subscriptions is automatically updated, but |
- the set of requested subscriptions is unchanged. |
- </p> |
- <p> |
- If a requested subscription is a directory it is ignored, |
- but remains in the set of requested subscriptions so that if |
- it later becomes a file it can be included in the set of |
- actual subscriptions. |
- </p> |
- <p> |
- It is an error if any of the keys in the map are not valid |
- services. If there is an error, then the existing |
- subscriptions will remain unchanged. |
- </p> |
- <params> |
- <field name="subscriptions"> |
- <map> |
- <key><ref>AnalysisService</ref></key> |
- <value> |
- <list><ref>FilePath</ref></list> |
- </value> |
- </map> |
- <p> |
- A table mapping services to a list of the files being |
- subscribed to the service. |
- </p> |
- </field> |
- </params> |
- </request> |
- <request method="updateContent"> |
- <p> |
- Update the content of one or more files. Files that were |
- previously updated but not included in this update remain |
- unchanged. This effectively represents an overlay of the |
- filesystem. The files whose content is overridden are |
- therefore seen by server as being files with the given |
- content, even if the files do not exist on the filesystem or |
- if the file path represents the path to a directory on the |
- filesystem. |
- </p> |
- <params> |
- <field name="files"> |
- <map> |
- <key><ref>FilePath</ref></key> |
- <value> |
- <union field="type"> |
- <ref>AddContentOverlay</ref> |
- <ref>ChangeContentOverlay</ref> |
- <ref>RemoveContentOverlay</ref> |
- </union> |
- </value> |
- </map> |
- <p> |
- A table mapping the files whose content has changed to a |
- description of the content change. |
- </p> |
- </field> |
- </params> |
- <result> |
- </result> |
- </request> |
- <request method="updateOptions" deprecated="true"> |
- <p><b>Deprecated:</b> all of the options can be set by users in |
- an analysis options file.</p> |
- <p> |
- Update the options controlling analysis based on the given |
- set of options. Any options that are not included in the |
- analysis options will not be changed. If there are options |
- in the analysis options that are not valid, they will be |
- silently ignored. |
- </p> |
- <params> |
- <field name="options"> |
- <ref>AnalysisOptions</ref> |
- <p> |
- The options that are to be used to control analysis. |
- </p> |
- </field> |
- </params> |
- </request> |
- <notification event="analyzedFiles"> |
- <p> |
- Reports the paths of the files that are being analyzed. |
- </p> |
- <p> |
- This notification is not subscribed to by default. Clients can |
- subscribe by including the value <tt>"ANALYZED_FILES"</tt> in the list |
- of services passed in an analysis.setGeneralSubscriptions request. |
- </p> |
- <params> |
- <field name="directories"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the paths of the files that are being analyzed. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="errors"> |
- <p> |
- Reports the errors associated with a given file. The set of |
- errors included in the notification is always a complete |
- list that supersedes any previously reported errors. |
- </p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the errors. |
- </p> |
- </field> |
- <field name="errors"> |
- <list><ref>AnalysisError</ref></list> |
- <p> |
- The errors contained in the file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="flushResults"> |
+ </field> |
+ <field name="members"> |
+ <list> |
+ <ref>ImplementedMember</ref> |
+ </list> |
<p> |
- Reports that any analysis results that were previously |
- associated with the given files should be considered to be |
- invalid because those files are no longer being analyzed, |
- either because the analysis root that contained it is no |
- longer being analyzed or because the file no longer exists. |
+ The member defined in the file that are implemented or overridden. |
</p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="invalidate"> |
+ <p> |
+ Reports that the navigation information associated with a region of a |
+ single file has become invalid and should be re-requested. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients can |
+ subscribe by including the value <tt>"INVALIDATE"</tt> in the list of |
+ services passed in an analysis.setSubscriptions request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- If a file is included in this notification and at some later |
- time a notification with results for the file is received, |
- clients should assume that the file is once again being |
- analyzed and the information should be processed. |
+ The file whose information has been invalidated. |
</p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- It is not possible to subscribe to or unsubscribe from this |
- notification. |
+ The offset of the invalidated region. |
</p> |
- <params> |
- <field name="files"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- The files that are no longer being analyzed. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="folding"> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
<p> |
- Reports the folding regions associated with a given |
- file. Folding regions can be nested, but will not be |
- overlapping. Nesting occurs when a foldable element, such as |
- a method, is nested inside another foldable element such as |
- a class. |
+ The length of the invalidated region. |
</p> |
+ </field> |
+ <field name="delta"> |
+ <ref>int</ref> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"FOLDING"</tt> in |
- the list of services passed in an analysis.setSubscriptions |
- request. |
+ The delta to be applied to the offsets in information that follows |
+ the invalidated region in order to update it so that it doesn't |
+ need to be re-requested. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the folding regions. |
- </p> |
- </field> |
- <field name="regions"> |
- <list><ref>FoldingRegion</ref></list> |
- <p> |
- The folding regions contained in the file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="highlights"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="navigation"> |
+ <p> |
+ Reports the navigation targets associated with a given file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"NAVIGATION"</tt> |
+ in the list of services passed in an |
+ analysis.setSubscriptions request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the navigation regions. |
+ </p> |
+ </field> |
+ <field name="regions"> |
+ <list> |
+ <ref>NavigationRegion</ref> |
+ </list> |
+ <p> |
+ The navigation regions contained in the file. |
+ The regions are sorted by their offsets. |
+ Each navigation region represents a list of targets |
+ associated with some range. The lists will usually |
+ contain a single target, but can contain more in the |
+ case of a part that is included in multiple libraries |
+ or in Dart code that is compiled against multiple |
+ versions of a package. Note that the navigation |
+ regions that are returned do not overlap other |
+ navigation regions. |
+ </p> |
+ </field> |
+ <field name="targets"> |
+ <list> |
+ <ref>NavigationTarget</ref> |
+ </list> |
+ <p> |
+ The navigation targets referenced in the file. |
+ They are referenced by <tt>NavigationRegion</tt>s by their |
+ index in this array. |
+ </p> |
+ </field> |
+ <field name="files"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ The files containing navigation targets referenced in the file. |
+ They are referenced by <tt>NavigationTarget</tt>s by their |
+ index in this array. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="occurrences"> |
+ <p> |
+ Reports the occurrences of references to elements within a |
+ single file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"OCCURRENCES"</tt> |
+ in the list of services passed in an |
+ analysis.setSubscriptions request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Reports the highlight regions associated with a given file. |
+ The file in which the references occur. |
</p> |
+ </field> |
+ <field name="occurrences"> |
+ <list> |
+ <ref>Occurrences</ref> |
+ </list> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"HIGHLIGHTS"</tt> |
- in the list of services passed in an |
- analysis.setSubscriptions request. |
+ The occurrences of references to elements within the |
+ file. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the highlight regions. |
- </p> |
- </field> |
- <field name="regions"> |
- <list><ref>HighlightRegion</ref></list> |
- <p> |
- The highlight regions contained in the file. Each |
- highlight region represents a particular syntactic or |
- semantic meaning associated with some range. Note that |
- the highlight regions that are returned can overlap |
- other highlight regions if there is more than one |
- meaning associated with a particular region. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="implemented"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="outline"> |
+ <p> |
+ Reports the outline associated with a single file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"OUTLINE"</tt> in |
+ the list of services passed in an analysis.setSubscriptions |
+ request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Reports the classes that are implemented or extended and |
- class members that are implemented or overridden in a file. |
+ The file with which the outline is associated. |
</p> |
+ </field> |
+ <field name="kind"> |
+ <ref>FileKind</ref> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"IMPLEMENTED"</tt> in |
- the list of services passed in an analysis.setSubscriptions |
- request. |
+ The kind of the file. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file with which the implementations are associated. |
- </p> |
- </field> |
- <field name="classes"> |
- <list><ref>ImplementedClass</ref></list> |
- <p> |
- The classes defined in the file that are implemented or extended. |
- </p> |
- </field> |
- <field name="members"> |
- <list><ref>ImplementedMember</ref></list> |
- <p> |
- The member defined in the file that are implemented or overridden. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="invalidate"> |
+ </field> |
+ <field name="libraryName" optional="true"> |
+ <ref>String</ref> |
<p> |
- Reports that the navigation information associated with a region of a |
- single file has become invalid and should be re-requested. |
+ The name of the library defined by the file using a "library" |
+ directive, or referenced by a "part of" directive. If both |
+ "library" and "part of" directives are present, then the |
+ "library" directive takes precedence. |
+ This field will be omitted if the file has neither "library" |
+ nor "part of" directives. |
</p> |
+ </field> |
+ <field name="outline"> |
+ <ref>Outline</ref> |
<p> |
- This notification is not subscribed to by default. Clients can |
- subscribe by including the value <tt>"INVALIDATE"</tt> in the list of |
- services passed in an analysis.setSubscriptions request. |
+ The outline associated with the file. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file whose information has been invalidated. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the invalidated region. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the invalidated region. |
- </p> |
- </field> |
- <field name="delta"> |
- <ref>int</ref> |
- <p> |
- The delta to be applied to the offsets in information that follows |
- the invalidated region in order to update it so that it doesn't |
- need to be re-requested. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="navigation"> |
+ </field> |
+ </params> |
+ </notification> |
+ <notification event="overrides"> |
+ <p> |
+ Reports the overriding members in a file. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients |
+ can subscribe by including the value <tt>"OVERRIDES"</tt> in |
+ the list of services passed in an analysis.setSubscriptions |
+ request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file with which the overrides are associated. |
+ </p> |
+ </field> |
+ <field name="overrides"> |
+ <list> |
+ <ref>Override</ref> |
+ </list> |
+ <p> |
+ The overrides associated with the file. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+</domain> |
+<domain name="completion"> |
+ <p> |
+ The code completion domain contains commands related to |
+ getting code completion suggestions. |
+ </p> |
+ <request method="getSuggestions"> |
+ <p> |
+ Request that completion suggestions for the given offset in |
+ the given file be returned. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Reports the navigation targets associated with a given file. |
+ The file containing the point at which suggestions are |
+ to be made. |
</p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"NAVIGATION"</tt> |
- in the list of services passed in an |
- analysis.setSubscriptions request. |
+ The offset within the file at which suggestions are to |
+ be made. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the navigation regions. |
- </p> |
- </field> |
- <field name="regions"> |
- <list><ref>NavigationRegion</ref></list> |
- <p> |
- The navigation regions contained in the file. |
- The regions are sorted by their offsets. |
- Each navigation region represents a list of targets |
- associated with some range. The lists will usually |
- contain a single target, but can contain more in the |
- case of a part that is included in multiple libraries |
- or in Dart code that is compiled against multiple |
- versions of a package. Note that the navigation |
- regions that are returned do not overlap other |
- navigation regions. |
- </p> |
- </field> |
- <field name="targets"> |
- <list><ref>NavigationTarget</ref></list> |
- <p> |
- The navigation targets referenced in the file. |
- They are referenced by <tt>NavigationRegion</tt>s by their |
- index in this array. |
- </p> |
- </field> |
- <field name="files"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- The files containing navigation targets referenced in the file. |
- They are referenced by <tt>NavigationTarget</tt>s by their |
- index in this array. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="occurrences"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id"> |
+ <ref>CompletionId</ref> |
<p> |
- Reports the occurrences of references to elements within a |
- single file. |
+ The identifier used to associate results with this |
+ completion request. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <notification event="results"> |
+ <p> |
+ Reports the completion suggestions that should be presented |
+ to the user. The set of suggestions included in the |
+ notification is always a complete list that supersedes any |
+ previously reported suggestions. |
+ </p> |
+ <params> |
+ <field name="id"> |
+ <ref>CompletionId</ref> |
+ <p> |
+ The id associated with the completion. |
+ </p> |
+ </field> |
+ <field name="replacementOffset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the start of the text to be |
+ replaced. This will be different than the offset used |
+ to request the completion suggestions if there was a |
+ portion of an identifier before the original |
+ offset. In particular, the replacementOffset will be |
+ the offset of the beginning of said identifier. |
+ </p> |
+ </field> |
+ <field name="replacementLength"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the text to be replaced if the remainder |
+ of the identifier containing the cursor is to be |
+ replaced when the suggestion is applied (that is, the |
+ number of characters in the existing identifier). |
+ </p> |
+ </field> |
+ <field name="results"> |
+ <list> |
+ <ref>CompletionSuggestion</ref> |
+ </list> |
+ <p> |
+ The completion suggestions being reported. The |
+ notification contains all possible completions at the |
+ requested cursor position, even those that do not match |
+ the characters the user has already typed. This allows |
+ the client to respond to further keystrokes from the |
+ user without having to make additional requests. |
+ </p> |
+ </field> |
+ <field name="isLast"> |
+ <ref>bool</ref> |
+ <p> |
+ True if this is that last set of results that will be |
+ returned for the indicated completion. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+</domain> |
+<domain name="search"> |
+ <p> |
+ The search domain contains commands related to searches that |
+ can be performed against the code base. |
+ </p> |
+ <request method="findElementReferences"> |
+ <p> |
+ Perform a search for references to the element defined or |
+ referenced at the given offset in the given file. |
+ </p> |
+ <p> |
+ An identifier is returned immediately, and individual |
+ results will be returned via the search.results notification |
+ as they become available. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"OCCURRENCES"</tt> |
- in the list of services passed in an |
- analysis.setSubscriptions request. |
+ The file containing the declaration of or reference to |
+ the element used to define the search. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file in which the references occur. |
- </p> |
- </field> |
- <field name="occurrences"> |
- <list><ref>Occurrences</ref></list> |
- <p> |
- The occurrences of references to elements within the |
- file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="outline"> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- Reports the outline associated with a single file. |
+ The offset within the file of the declaration of or |
+ reference to the element. |
</p> |
+ </field> |
+ <field name="includePotential"> |
+ <ref>bool</ref> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"OUTLINE"</tt> in |
- the list of services passed in an analysis.setSubscriptions |
- request. |
+ True if potential matches are to be included in the |
+ results. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file with which the outline is associated. |
- </p> |
- </field> |
- <field name="kind"> |
- <ref>FileKind</ref> |
- <p> |
- The kind of the file. |
- </p> |
- </field> |
- <field name="libraryName" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the library defined by the file using a "library" |
- directive, or referenced by a "part of" directive. If both |
- "library" and "part of" directives are present, then the |
- "library" directive takes precedence. |
- This field will be omitted if the file has neither "library" |
- nor "part of" directives. |
- </p> |
- </field> |
- <field name="outline"> |
- <ref>Outline</ref> |
- <p> |
- The outline associated with the file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- <notification event="overrides"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id" optional="true"> |
+ <ref>SearchId</ref> |
<p> |
- Reports the overriding members in a file. |
+ The identifier used to associate results with this |
+ search request. |
</p> |
<p> |
- This notification is not subscribed to by default. Clients |
- can subscribe by including the value <tt>"OVERRIDES"</tt> in |
- the list of services passed in an analysis.setSubscriptions |
- request. |
+ If no element was found at the given location, this |
+ field will be absent, and no results will be reported |
+ via the search.results notification. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file with which the overrides are associated. |
- </p> |
- </field> |
- <field name="overrides"> |
- <list><ref>Override</ref></list> |
- <p> |
- The overrides associated with the file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- </domain> |
- <domain name="completion"> |
- <p> |
- The code completion domain contains commands related to |
- getting code completion suggestions. |
- </p> |
- <request method="getSuggestions"> |
+ </field> |
+ <field name="element" optional="true"> |
+ <ref>Element</ref> |
<p> |
- Request that completion suggestions for the given offset in |
- the given file be returned. |
+ The element referenced or defined at the given offset |
+ and whose references will be returned in the search |
+ results. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the point at which suggestions are |
- to be made. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset within the file at which suggestions are to |
- be made. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id"> |
- <ref>CompletionId</ref> |
- <p> |
- The identifier used to associate results with this |
- completion request. |
- </p> |
- </field> |
- </result> |
- </request> |
- <notification event="results"> |
- <p> |
- Reports the completion suggestions that should be presented |
- to the user. The set of suggestions included in the |
- notification is always a complete list that supersedes any |
- previously reported suggestions. |
- </p> |
- <params> |
- <field name="id"> |
- <ref>CompletionId</ref> |
- <p> |
- The id associated with the completion. |
- </p> |
- </field> |
- <field name="replacementOffset"> |
- <ref>int</ref> |
- <p> |
- The offset of the start of the text to be |
- replaced. This will be different than the offset used |
- to request the completion suggestions if there was a |
- portion of an identifier before the original |
- offset. In particular, the replacementOffset will be |
- the offset of the beginning of said identifier. |
- </p> |
- </field> |
- <field name="replacementLength"> |
- <ref>int</ref> |
- <p> |
- The length of the text to be replaced if the remainder |
- of the identifier containing the cursor is to be |
- replaced when the suggestion is applied (that is, the |
- number of characters in the existing identifier). |
- </p> |
- </field> |
- <field name="results"> |
- <list><ref>CompletionSuggestion</ref></list> |
- <p> |
- The completion suggestions being reported. The |
- notification contains all possible completions at the |
- requested cursor position, even those that do not match |
- the characters the user has already typed. This allows |
- the client to respond to further keystrokes from the |
- user without having to make additional requests. |
- </p> |
- </field> |
- <field name="isLast"> |
- <ref>bool</ref> |
- <p> |
- True if this is that last set of results that will be |
- returned for the indicated completion. |
- </p> |
- </field> |
- </params> |
- </notification> |
- </domain> |
- <domain name="search"> |
- <p> |
- The search domain contains commands related to searches that |
- can be performed against the code base. |
- </p> |
- <request method="findElementReferences"> |
<p> |
- Perform a search for references to the element defined or |
- referenced at the given offset in the given file. |
+ If no element was found at the given location, this |
+ field will be absent. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="findMemberDeclarations"> |
+ <p> |
+ Perform a search for declarations of members whose name is |
+ equal to the given name. |
+ </p> |
+ <p> |
+ An identifier is returned immediately, and individual |
+ results will be returned via the search.results notification |
+ as they become available. |
+ </p> |
+ <params> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- An identifier is returned immediately, and individual |
- results will be returned via the search.results notification |
- as they become available. |
+ The name of the declarations to be found. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the declaration of or reference to |
- the element used to define the search. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset within the file of the declaration of or |
- reference to the element. |
- </p> |
- </field> |
- <field name="includePotential"> |
- <ref>bool</ref> |
- <p> |
- True if potential matches are to be included in the |
- results. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id" optional="true"> |
- <ref>SearchId</ref> |
- <p> |
- The identifier used to associate results with this |
- search request. |
- </p> |
- <p> |
- If no element was found at the given location, this |
- field will be absent, and no results will be reported |
- via the search.results notification. |
- </p> |
- </field> |
- <field name="element" optional="true"> |
- <ref>Element</ref> |
- <p> |
- The element referenced or defined at the given offset |
- and whose references will be returned in the search |
- results. |
- </p> |
- <p> |
- If no element was found at the given location, this |
- field will be absent. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="findMemberDeclarations"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id"> |
+ <ref>SearchId</ref> |
<p> |
- Perform a search for declarations of members whose name is |
- equal to the given name. |
+ The identifier used to associate results with this |
+ search request. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="findMemberReferences"> |
+ <p> |
+ Perform a search for references to members whose name is |
+ equal to the given name. This search does not check to see |
+ that there is a member defined with the given name, so it is |
+ able to find references to undefined members as well. |
+ </p> |
+ <p> |
+ An identifier is returned immediately, and individual |
+ results will be returned via the search.results notification |
+ as they become available. |
+ </p> |
+ <params> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- An identifier is returned immediately, and individual |
- results will be returned via the search.results notification |
- as they become available. |
+ The name of the references to be found. |
</p> |
- <params> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name of the declarations to be found. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id"> |
- <ref>SearchId</ref> |
- <p> |
- The identifier used to associate results with this |
- search request. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="findMemberReferences"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id"> |
+ <ref>SearchId</ref> |
<p> |
- Perform a search for references to members whose name is |
- equal to the given name. This search does not check to see |
- that there is a member defined with the given name, so it is |
- able to find references to undefined members as well. |
+ The identifier used to associate results with this |
+ search request. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="findTopLevelDeclarations"> |
+ <p> |
+ Perform a search for declarations of top-level elements |
+ (classes, typedefs, getters, setters, functions and fields) |
+ whose name matches the given pattern. |
+ </p> |
+ <p> |
+ An identifier is returned immediately, and individual |
+ results will be returned via the search.results notification |
+ as they become available. |
+ </p> |
+ <params> |
+ <field name="pattern"> |
+ <ref>String</ref> |
<p> |
- An identifier is returned immediately, and individual |
- results will be returned via the search.results notification |
- as they become available. |
+ The regular expression used to match the names of the |
+ declarations to be found. |
</p> |
- <params> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name of the references to be found. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id"> |
- <ref>SearchId</ref> |
- <p> |
- The identifier used to associate results with this |
- search request. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="findTopLevelDeclarations"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id"> |
+ <ref>SearchId</ref> |
<p> |
- Perform a search for declarations of top-level elements |
- (classes, typedefs, getters, setters, functions and fields) |
- whose name matches the given pattern. |
+ The identifier used to associate results with this |
+ search request. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getTypeHierarchy"> |
+ <p> |
+ Return the type hierarchy of the class declared or |
+ referenced at the given location. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the declaration or reference to the |
+ type for which a hierarchy is being requested. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the name of the type within the file. |
+ </p> |
+ </field> |
+ <field name="superOnly" optional="true"> |
+ <ref>bool</ref> |
+ <p> |
+ True if the client is only requesting superclasses and |
+ interfaces hierarchy. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="hierarchyItems" optional="true"> |
+ <list> |
+ <ref>TypeHierarchyItem</ref> |
+ </list> |
+ <p> |
+ A list of the types in the requested hierarchy. The |
+ first element of the list is the item representing the |
+ type for which the hierarchy was requested. The index of |
+ other elements of the list is unspecified, but |
+ correspond to the integers used to reference supertype |
+ and subtype items within the items. |
+ </p> |
+ <p> |
+ This field will be absent if the code at the given file |
+ and offset does not represent a type, or if the file has |
+ not been sufficiently analyzed to allow a type hierarchy |
+ to be produced. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <notification event="results"> |
+ <p> |
+ Reports some or all of the results of performing a requested |
+ search. Unlike other notifications, this notification |
+ contains search results that should be added to any |
+ previously received search results associated with the same |
+ search id. |
+ </p> |
+ <params> |
+ <field name="id"> |
+ <ref>SearchId</ref> |
+ <p> |
+ The id associated with the search. |
+ </p> |
+ </field> |
+ <field name="results"> |
+ <list> |
+ <ref>SearchResult</ref> |
+ </list> |
+ <p> |
+ The search results being reported. |
+ </p> |
+ </field> |
+ <field name="isLast"> |
+ <ref>bool</ref> |
+ <p> |
+ True if this is that last set of results that will be |
+ returned for the indicated search. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+</domain> |
+<domain name="edit"> |
+ <p> |
+ The edit domain contains commands related to edits that can be |
+ applied to the code. |
+ </p> |
+ <request method="format"> |
+ <p> |
+ Format the contents of a single file. The currently selected region of |
+ text is passed in so that the selection can be preserved across the |
+ formatting operation. The updated selection will be as close to |
+ matching the original as possible, but whitespace at the beginning or |
+ end of the selected region will be ignored. If preserving selection |
+ information is not required, zero (0) can be specified for both the |
+ selection offset and selection length. |
+ </p> |
+ <p> |
+ If a request is made for a file which does not exist, or which is not |
+ currently subject to analysis (e.g. because it is not associated with |
+ any analysis root specified to analysis.setAnalysisRoots), an error of |
+ type <tt>FORMAT_INVALID_FILE</tt> will be generated. If the source |
+ contains syntax errors, an error of type <tt>FORMAT_WITH_ERRORS</tt> |
+ will be generated. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- An identifier is returned immediately, and individual |
- results will be returned via the search.results notification |
- as they become available. |
+ The file containing the code to be formatted. |
</p> |
- <params> |
- <field name="pattern"> |
- <ref>String</ref> |
- <p> |
- The regular expression used to match the names of the |
- declarations to be found. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id"> |
- <ref>SearchId</ref> |
- <p> |
- The identifier used to associate results with this |
- search request. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getTypeHierarchy"> |
+ </field> |
+ <field name="selectionOffset"> |
+ <ref>int</ref> |
<p> |
- Return the type hierarchy of the class declared or |
- referenced at the given location. |
+ The offset of the current selection in the file. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the declaration or reference to the |
- type for which a hierarchy is being requested. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the name of the type within the file. |
- </p> |
- </field> |
- <field name="superOnly" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if the client is only requesting superclasses and |
- interfaces hierarchy. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="hierarchyItems" optional="true"> |
- <list><ref>TypeHierarchyItem</ref></list> |
- <p> |
- A list of the types in the requested hierarchy. The |
- first element of the list is the item representing the |
- type for which the hierarchy was requested. The index of |
- other elements of the list is unspecified, but |
- correspond to the integers used to reference supertype |
- and subtype items within the items. |
- </p> |
- <p> |
- This field will be absent if the code at the given file |
- and offset does not represent a type, or if the file has |
- not been sufficiently analyzed to allow a type hierarchy |
- to be produced. |
- </p> |
- </field> |
- </result> |
- </request> |
- <notification event="results"> |
- <p> |
- Reports some or all of the results of performing a requested |
- search. Unlike other notifications, this notification |
- contains search results that should be added to any |
- previously received search results associated with the same |
- search id. |
- </p> |
- <params> |
- <field name="id"> |
- <ref>SearchId</ref> |
- <p> |
- The id associated with the search. |
- </p> |
- </field> |
- <field name="results"> |
- <list><ref>SearchResult</ref></list> |
- <p> |
- The search results being reported. |
- </p> |
- </field> |
- <field name="isLast"> |
- <ref>bool</ref> |
- <p> |
- True if this is that last set of results that will be |
- returned for the indicated search. |
- </p> |
- </field> |
- </params> |
- </notification> |
- </domain> |
- <domain name="edit"> |
- <p> |
- The edit domain contains commands related to edits that can be |
- applied to the code. |
- </p> |
- <request method="format"> |
- <p> |
- Format the contents of a single file. The currently selected region of |
- text is passed in so that the selection can be preserved across the |
- formatting operation. The updated selection will be as close to |
- matching the original as possible, but whitespace at the beginning or |
- end of the selected region will be ignored. If preserving selection |
- information is not required, zero (0) can be specified for both the |
- selection offset and selection length. |
- </p> |
- <p> |
- If a request is made for a file which does not exist, or which is not |
- currently subject to analysis (e.g. because it is not associated with |
- any analysis root specified to analysis.setAnalysisRoots), an error of |
- type <tt>FORMAT_INVALID_FILE</tt> will be generated. If the source |
- contains syntax errors, an error of type <tt>FORMAT_WITH_ERRORS</tt> |
- will be generated. |
- </p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the code to be formatted. |
- </p> |
- </field> |
- <field name="selectionOffset"> |
- <ref>int</ref> |
- <p> |
- The offset of the current selection in the file. |
- </p> |
- </field> |
- <field name="selectionLength"> |
- <ref>int</ref> |
- <p> |
- The length of the current selection in the file. |
- </p> |
- </field> |
- <!-- |
+ </field> |
+ <field name="selectionLength"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the current selection in the file. |
+ </p> |
+ </field> |
+ <!-- |
<field name="selectionOnly" optional="true"> |
<ref>bool</ref> |
<p> |
@@ -1541,3105 +1627,1874 @@ |
</p> |
</field> |
--> |
- <field name="lineLength" optional="true"> |
- <ref>int</ref> |
- <p> |
- The line length to be used by the formatter. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="edits"> |
- <list><ref>SourceEdit</ref></list> |
- <p> |
- The edit(s) to be applied in order to format the code. The list |
- will be empty if the code was already formatted (there are no |
- changes). |
- </p> |
- </field> |
- <field name="selectionOffset"> |
- <ref>int</ref> |
- <p> |
- The offset of the selection after formatting the code. |
- </p> |
- </field> |
- <field name="selectionLength"> |
- <ref>int</ref> |
- <p> |
- The length of the selection after formatting the code. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getAssists"> |
+ <field name="lineLength" optional="true"> |
+ <ref>int</ref> |
<p> |
- Return the set of assists that are available at the given |
- location. An assist is distinguished from a refactoring |
- primarily by the fact that it affects a single file and does |
- not require user input in order to be performed. |
+ The line length to be used by the formatter. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the code for which assists are being |
- requested. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the code for which assists are being |
- requested. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the code for which assists are being |
- requested. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="assists"> |
- <list><ref>SourceChange</ref></list> |
- <p> |
- The assists that are available at the given location. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getAvailableRefactorings"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="edits"> |
+ <list> |
+ <ref>SourceEdit</ref> |
+ </list> |
<p> |
- Get a list of the kinds of refactorings that are valid for |
- the given selection in the given file. |
+ The edit(s) to be applied in order to format the code. The list |
+ will be empty if the code was already formatted (there are no |
+ changes). |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the code on which the refactoring |
- would be based. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the code on which the refactoring would be |
- based. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the code on which the refactoring would be |
- based. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="kinds"> |
- <list><ref>RefactoringKind</ref></list> |
- <p> |
- The kinds of refactorings that are valid for the given |
- selection. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getFixes"> |
+ </field> |
+ <field name="selectionOffset"> |
+ <ref>int</ref> |
<p> |
- Return the set of fixes that are available for the errors at |
- a given offset in a given file. |
+ The offset of the selection after formatting the code. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the errors for which fixes are being |
- requested. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset used to select the errors for which fixes |
- will be returned. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="fixes"> |
- <list><ref>AnalysisErrorFixes</ref></list> |
- <p> |
- The fixes that are available for the errors at the given offset. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getRefactoring"> |
+ </field> |
+ <field name="selectionLength"> |
+ <ref>int</ref> |
<p> |
- Get the changes required to perform a refactoring. |
+ The length of the selection after formatting the code. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getAssists"> |
+ <p> |
+ Return the set of assists that are available at the given |
+ location. An assist is distinguished from a refactoring |
+ primarily by the fact that it affects a single file and does |
+ not require user input in order to be performed. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- If another refactoring request is received during the processing |
- of this one, an error of type <tt>REFACTORING_REQUEST_CANCELLED</tt> |
- will be generated. |
+ The file containing the code for which assists are being |
+ requested. |
</p> |
- <params> |
- <field name="kind"> |
- <ref>RefactoringKind</ref> |
- <p> |
- The kind of refactoring to be performed. |
- </p> |
- </field> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the code involved in the |
- refactoring. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region involved in the refactoring. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region involved in the refactoring. |
- </p> |
- </field> |
- <field name="validateOnly"> |
- <ref>bool</ref> |
- <p> |
- True if the client is only requesting that the values of |
- the options be validated and no change be generated. |
- </p> |
- </field> |
- <field name="options" optional="true"> |
- <ref>RefactoringOptions</ref> |
- <p> |
- Data used to provide values provided by the user. The |
- structure of the data is dependent on the kind of |
- refactoring being performed. The data that is expected is |
- documented in the section titled <a |
- href="#refactorings">Refactorings</a>, labeled as |
- "Options". This field can be omitted if the refactoring |
- does not require any options or if the values of those |
- options are not known. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="initialProblems"> |
- <list><ref>RefactoringProblem</ref></list> |
- <p> |
- The initial status of the refactoring, i.e. problems related to |
- the context in which the refactoring is requested. |
- The array will be empty if there are no known problems. |
- </p> |
- </field> |
- <field name="optionsProblems"> |
- <list><ref>RefactoringProblem</ref></list> |
- <p> |
- The options validation status, i.e. problems in the given options, |
- such as light-weight validation of a new name, flags |
- compatibility, etc. |
- The array will be empty if there are no known problems. |
- </p> |
- </field> |
- <field name="finalProblems"> |
- <list><ref>RefactoringProblem</ref></list> |
- <p> |
- The final status of the refactoring, i.e. problems identified in |
- the result of a full, potentially expensive validation and / or |
- change creation. |
- The array will be empty if there are no known problems. |
- </p> |
- </field> |
- <field name="feedback" optional="true"> |
- <ref>RefactoringFeedback</ref> |
- <p> |
- Data used to provide feedback to the user. The structure |
- of the data is dependent on the kind of refactoring |
- being created. The data that is returned is documented |
- in the section titled <a |
- href="#refactorings">Refactorings</a>, labeled as |
- "Feedback". |
- </p> |
- </field> |
- <field name="change" optional="true"> |
- <ref>SourceChange</ref> |
- <p> |
- The changes that are to be applied to affect the |
- refactoring. This field will be omitted if there are |
- problems that prevent a set of changes from being |
- computed, such as having no options specified for a |
- refactoring that requires them, or if only validation |
- was requested. |
- </p> |
- </field> |
- <field name="potentialEdits" optional="true"> |
- <list><ref>String</ref></list> |
- <p> |
- The ids of source edits that are not known to be valid. An edit is |
- not known to be valid if there was insufficient type information |
- for the server to be able to determine whether or not the code |
- needs to be modified, such as when a member is being renamed and |
- there is a reference to a member from an unknown type. This field |
- will be omitted if the change field is omitted or if there are no |
- potential edits for the refactoring. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="getStatementCompletion" experimental="true"> |
- <p> |
- Get the changes required to convert the partial statement at the given |
- location into a syntactically valid statement. If the current statement |
- is already valid the change will insert a newline plus appropriate |
- indentation at the end of the line containing the offset. |
- If a change that makes the statement valid cannot be determined (perhaps |
- because it has not yet been implemented) the statement will be considered |
- already valid and the appropriate change returned. |
- </p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the statement to be completed. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset used to identify the statement to be completed. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="change"> |
- <ref>SourceChange</ref> |
- <p> |
- The change to be applied in order to complete the statement. |
- </p> |
- </field> |
- <field name="whitespaceOnly"> |
- <ref>bool</ref> |
- <p> |
- Will be true if the change contains nothing but whitespace |
- characters, or is empty. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="sortMembers"> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- Sort all of the directives, unit and class members |
- of the given Dart file. |
+ The offset of the code for which assists are being |
+ requested. |
</p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
<p> |
- If a request is made for a file that does not exist, does not belong |
- to an analysis root or is not a Dart file, |
- <tt>SORT_MEMBERS_INVALID_FILE</tt> will be generated. |
+ The length of the code for which assists are being |
+ requested. |
</p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="assists"> |
+ <list> |
+ <ref>SourceChange</ref> |
+ </list> |
<p> |
- If the Dart file has scan or parse errors, |
- <tt>SORT_MEMBERS_PARSE_ERRORS</tt> will be generated. |
+ The assists that are available at the given location. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The Dart file to sort. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="edit"> |
- <ref>SourceFileEdit</ref> |
- <p> |
- The file edit that is to be applied to the given file to effect |
- the sorting. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="organizeDirectives"> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getAvailableRefactorings"> |
+ <p> |
+ Get a list of the kinds of refactorings that are valid for |
+ the given selection in the given file. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the code on which the refactoring |
+ would be based. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the code on which the refactoring would be |
+ based. |
+ </p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the code on which the refactoring would be |
+ based. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="kinds"> |
+ <list> |
+ <ref>RefactoringKind</ref> |
+ </list> |
+ <p> |
+ The kinds of refactorings that are valid for the given |
+ selection. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getFixes"> |
+ <p> |
+ Return the set of fixes that are available for the errors at |
+ a given offset in a given file. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the errors for which fixes are being |
+ requested. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset used to select the errors for which fixes |
+ will be returned. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="fixes"> |
+ <list> |
+ <ref>AnalysisErrorFixes</ref> |
+ </list> |
+ <p> |
+ The fixes that are available for the errors at the given offset. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getRefactoring"> |
+ <p> |
+ Get the changes required to perform a refactoring. |
+ </p> |
+ <p> |
+ If another refactoring request is received during the processing |
+ of this one, an error of type <tt>REFACTORING_REQUEST_CANCELLED</tt> |
+ will be generated. |
+ </p> |
+ <params> |
+ <field name="kind"> |
+ <ref>RefactoringKind</ref> |
+ <p> |
+ The kind of refactoring to be performed. |
+ </p> |
+ </field> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file containing the code involved in the |
+ refactoring. |
+ </p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the region involved in the refactoring. |
+ </p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the region involved in the refactoring. |
+ </p> |
+ </field> |
+ <field name="validateOnly"> |
+ <ref>bool</ref> |
+ <p> |
+ True if the client is only requesting that the values of |
+ the options be validated and no change be generated. |
+ </p> |
+ </field> |
+ <field name="options" optional="true"> |
+ <ref>RefactoringOptions</ref> |
+ <p> |
+ Data used to provide values provided by the user. The |
+ structure of the data is dependent on the kind of |
+ refactoring being performed. The data that is expected is |
+ documented in the section titled <a |
+ href="#refactorings">Refactorings</a>, labeled as |
+ "Options". This field can be omitted if the refactoring |
+ does not require any options or if the values of those |
+ options are not known. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="initialProblems"> |
+ <list> |
+ <ref>RefactoringProblem</ref> |
+ </list> |
+ <p> |
+ The initial status of the refactoring, i.e. problems related to |
+ the context in which the refactoring is requested. |
+ The array will be empty if there are no known problems. |
+ </p> |
+ </field> |
+ <field name="optionsProblems"> |
+ <list> |
+ <ref>RefactoringProblem</ref> |
+ </list> |
+ <p> |
+ The options validation status, i.e. problems in the given options, |
+ such as light-weight validation of a new name, flags |
+ compatibility, etc. |
+ The array will be empty if there are no known problems. |
+ </p> |
+ </field> |
+ <field name="finalProblems"> |
+ <list> |
+ <ref>RefactoringProblem</ref> |
+ </list> |
+ <p> |
+ The final status of the refactoring, i.e. problems identified in |
+ the result of a full, potentially expensive validation and / or |
+ change creation. |
+ The array will be empty if there are no known problems. |
+ </p> |
+ </field> |
+ <field name="feedback" optional="true"> |
+ <ref>RefactoringFeedback</ref> |
+ <p> |
+ Data used to provide feedback to the user. The structure |
+ of the data is dependent on the kind of refactoring |
+ being created. The data that is returned is documented |
+ in the section titled <a |
+ href="#refactorings">Refactorings</a>, labeled as |
+ "Feedback". |
+ </p> |
+ </field> |
+ <field name="change" optional="true"> |
+ <ref>SourceChange</ref> |
+ <p> |
+ The changes that are to be applied to affect the |
+ refactoring. This field will be omitted if there are |
+ problems that prevent a set of changes from being |
+ computed, such as having no options specified for a |
+ refactoring that requires them, or if only validation |
+ was requested. |
+ </p> |
+ </field> |
+ <field name="potentialEdits" optional="true"> |
+ <list> |
+ <ref>String</ref> |
+ </list> |
+ <p> |
+ The ids of source edits that are not known to be valid. An edit is |
+ not known to be valid if there was insufficient type information |
+ for the server to be able to determine whether or not the code |
+ needs to be modified, such as when a member is being renamed and |
+ there is a reference to a member from an unknown type. This field |
+ will be omitted if the change field is omitted or if there are no |
+ potential edits for the refactoring. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getStatementCompletion" experimental="true"> |
+ <p> |
+ Get the changes required to convert the partial statement at the given |
+ location into a syntactically valid statement. If the current statement |
+ is already valid the change will insert a newline plus appropriate |
+ indentation at the end of the line containing the offset. |
+ If a change that makes the statement valid cannot be determined (perhaps |
+ because it has not yet been implemented) the statement will be considered |
+ already valid and the appropriate change returned. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Organizes all of the directives - removes unused imports and sorts |
- directives of the given Dart file according to the |
- <a href="https://www.dartlang.org/articles/style-guide/">Dart Style Guide</a>. |
+ The file containing the statement to be completed. |
</p> |
+ </field> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- If a request is made for a file that does not exist, does not belong |
- to an analysis root or is not a Dart file, |
- <tt>FILE_NOT_ANALYZED</tt> will be generated. |
+ The offset used to identify the statement to be completed. |
</p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="change"> |
+ <ref>SourceChange</ref> |
<p> |
- If directives of the Dart file cannot be organized, for example |
- because it has scan or parse errors, or by other reasons, |
- <tt>ORGANIZE_DIRECTIVES_ERROR</tt> will be generated. The message |
- will provide details about the reason. |
+ The change to be applied in order to complete the statement. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The Dart file to organize directives in. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="edit"> |
- <ref>SourceFileEdit</ref> |
- <p> |
- The file edit that is to be applied to the given file to effect |
- the organizing. |
- </p> |
- </field> |
- </result> |
- </request> |
- </domain> |
- <domain name="execution"> |
- <p> |
- The execution domain contains commands related to providing an execution |
- or debugging experience. |
- </p> |
- <request method="createContext"> |
+ </field> |
+ <field name="whitespaceOnly"> |
+ <ref>bool</ref> |
<p> |
- Create an execution context for the executable file with the given |
- path. The context that is created will persist until |
- execution.deleteContext is used to delete it. Clients, therefore, are |
- responsible for managing the lifetime of execution contexts. |
+ Will be true if the change contains nothing but whitespace |
+ characters, or is empty. |
</p> |
- <params> |
- <field name="contextRoot"> |
- <ref>FilePath</ref> |
- <p> |
- The path of the Dart or HTML file that will be launched, or the |
- path of the directory containing the file. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="id"> |
- <ref>ExecutionContextId</ref> |
- <p> |
- The identifier used to refer to the execution context that was |
- created. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="deleteContext"> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="sortMembers"> |
+ <p> |
+ Sort all of the directives, unit and class members |
+ of the given Dart file. |
+ </p> |
+ <p> |
+ If a request is made for a file that does not exist, does not belong |
+ to an analysis root or is not a Dart file, |
+ <tt>SORT_MEMBERS_INVALID_FILE</tt> will be generated. |
+ </p> |
+ <p> |
+ If the Dart file has scan or parse errors, |
+ <tt>SORT_MEMBERS_PARSE_ERRORS</tt> will be generated. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Delete the execution context with the given identifier. The context id |
- is no longer valid after this command. The server is allowed to re-use |
- ids when they are no longer valid. |
+ The Dart file to sort. |
</p> |
- <params> |
- <field name="id"> |
- <ref>ExecutionContextId</ref> |
- <p> |
- The identifier of the execution context that is to be deleted. |
- </p> |
- </field> |
- </params> |
- </request> |
- <request method="mapUri"> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="edit"> |
+ <ref>SourceFileEdit</ref> |
<p> |
- Map a URI from the execution context to the file that it corresponds |
- to, or map a file to the URI that it corresponds to in the execution |
- context. |
+ The file edit that is to be applied to the given file to effect |
+ the sorting. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="organizeDirectives"> |
+ <p> |
+ Organizes all of the directives - removes unused imports and sorts |
+ directives of the given Dart file according to the |
+ <a href="https://www.dartlang.org/articles/style-guide/">Dart Style |
+ Guide</a>. |
+ </p> |
+ <p> |
+ If a request is made for a file that does not exist, does not belong |
+ to an analysis root or is not a Dart file, |
+ <tt>FILE_NOT_ANALYZED</tt> will be generated. |
+ </p> |
+ <p> |
+ If directives of the Dart file cannot be organized, for example |
+ because it has scan or parse errors, or by other reasons, |
+ <tt>ORGANIZE_DIRECTIVES_ERROR</tt> will be generated. The message |
+ will provide details about the reason. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The Dart file to organize directives in. |
+ </p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="edit"> |
+ <ref>SourceFileEdit</ref> |
+ <p> |
+ The file edit that is to be applied to the given file to effect |
+ the organizing. |
+ </p> |
+ </field> |
+ </result> |
+ </request> |
+</domain> |
+<domain name="execution"> |
+ <p> |
+ The execution domain contains commands related to providing an execution |
+ or debugging experience. |
+ </p> |
+ <request method="createContext"> |
+ <p> |
+ Create an execution context for the executable file with the given |
+ path. The context that is created will persist until |
+ execution.deleteContext is used to delete it. Clients, therefore, are |
+ responsible for managing the lifetime of execution contexts. |
+ </p> |
+ <params> |
+ <field name="contextRoot"> |
+ <ref>FilePath</ref> |
<p> |
- Exactly one of the file and uri fields must be provided. If both |
- fields are provided, then an error of type <tt>INVALID_PARAMETER</tt> |
- will be generated. Similarly, if neither field is provided, then an |
- error of type <tt>INVALID_PARAMETER</tt> will be generated. |
+ The path of the Dart or HTML file that will be launched, or the |
+ path of the directory containing the file. |
</p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="id"> |
+ <ref>ExecutionContextId</ref> |
<p> |
- If the file field is provided and the value is not the path of a file |
- (either the file does not exist or the path references something other |
- than a file), then an error of type <tt>INVALID_PARAMETER</tt> will |
- be generated. |
+ The identifier used to refer to the execution context that was |
+ created. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="deleteContext"> |
+ <p> |
+ Delete the execution context with the given identifier. The context id |
+ is no longer valid after this command. The server is allowed to re-use |
+ ids when they are no longer valid. |
+ </p> |
+ <params> |
+ <field name="id"> |
+ <ref>ExecutionContextId</ref> |
<p> |
- If the uri field is provided and the value is not a valid URI or if |
- the URI references something that is not a file (either a file that |
- does not exist or something other than a file), then an error of type |
- <tt>INVALID_PARAMETER</tt> will be generated. |
+ The identifier of the execution context that is to be deleted. |
</p> |
+ </field> |
+ </params> |
+ </request> |
+ <request method="mapUri"> |
+ <p> |
+ Map a URI from the execution context to the file that it corresponds |
+ to, or map a file to the URI that it corresponds to in the execution |
+ context. |
+ </p> |
+ <p> |
+ Exactly one of the file and uri fields must be provided. If both |
+ fields are provided, then an error of type <tt>INVALID_PARAMETER</tt> |
+ will be generated. Similarly, if neither field is provided, then an |
+ error of type <tt>INVALID_PARAMETER</tt> will be generated. |
+ </p> |
+ <p> |
+ If the file field is provided and the value is not the path of a file |
+ (either the file does not exist or the path references something other |
+ than a file), then an error of type <tt>INVALID_PARAMETER</tt> will |
+ be generated. |
+ </p> |
+ <p> |
+ If the uri field is provided and the value is not a valid URI or if |
+ the URI references something that is not a file (either a file that |
+ does not exist or something other than a file), then an error of type |
+ <tt>INVALID_PARAMETER</tt> will be generated. |
+ </p> |
+ <p> |
+ If the contextRoot used to create the execution context does not |
+ exist, then an error of type <tt>INVALID_EXECUTION_CONTEXT</tt> will |
+ be generated. |
+ </p> |
+ <params> |
+ <field name="id"> |
+ <ref>ExecutionContextId</ref> |
<p> |
- If the contextRoot used to create the execution context does not |
- exist, then an error of type <tt>INVALID_EXECUTION_CONTEXT</tt> will |
- be generated. |
+ The identifier of the execution context in which the URI is to be |
+ mapped. |
</p> |
- <params> |
- <field name="id"> |
- <ref>ExecutionContextId</ref> |
- <p> |
- The identifier of the execution context in which the URI is to be |
- mapped. |
- </p> |
- </field> |
- <field name="file" optional="true"> |
- <ref>FilePath</ref> |
- <p> |
- The path of the file to be mapped into a URI. |
- </p> |
- </field> |
- <field name="uri" optional="true"> |
- <ref>String</ref> |
- <p> |
- The URI to be mapped into a file path. |
- </p> |
- </field> |
- </params> |
- <result> |
- <field name="file" optional="true"> |
- <ref>FilePath</ref> |
- <p> |
- The file to which the URI was mapped. This field is omitted if the |
- uri field was not given in the request. |
- </p> |
- </field> |
- <field name="uri" optional="true"> |
- <ref>String</ref> |
- <p> |
- The URI to which the file path was mapped. This field is omitted |
- if the file field was not given in the request. |
- </p> |
- </field> |
- </result> |
- </request> |
- <request method="setSubscriptions" deprecated="true"> |
+ </field> |
+ <field name="file" optional="true"> |
+ <ref>FilePath</ref> |
<p> |
- <b>Deprecated:</b> the analysis server no longer fires |
- <tt>LAUNCH_DATA</tt> events. |
+ The path of the file to be mapped into a URI. |
</p> |
+ </field> |
+ <field name="uri" optional="true"> |
+ <ref>String</ref> |
<p> |
- Subscribe for services. All previous subscriptions are replaced by the |
- given set of services. |
+ The URI to be mapped into a file path. |
</p> |
+ </field> |
+ </params> |
+ <result> |
+ <field name="file" optional="true"> |
+ <ref>FilePath</ref> |
<p> |
- It is an error if any of the elements in the list are not valid |
- services. If there is an error, then the current subscriptions will |
- remain unchanged. |
+ The file to which the URI was mapped. This field is omitted if the |
+ uri field was not given in the request. |
</p> |
- <params> |
- <field name="subscriptions"> |
- <list><ref>ExecutionService</ref></list> |
- <p> |
- A list of the services being subscribed to. |
- </p> |
- </field> |
- </params> |
- </request> |
- <notification event="launchData"> |
+ </field> |
+ <field name="uri" optional="true"> |
+ <ref>String</ref> |
<p> |
- Reports information needed to allow a single file to be launched. |
+ The URI to which the file path was mapped. This field is omitted |
+ if the file field was not given in the request. |
</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="setSubscriptions" deprecated="true"> |
+ <p> |
+ <b>Deprecated:</b> the analysis server no longer fires |
+ <tt>LAUNCH_DATA</tt> events. |
+ </p> |
+ <p> |
+ Subscribe for services. All previous subscriptions are replaced by the |
+ given set of services. |
+ </p> |
+ <p> |
+ It is an error if any of the elements in the list are not valid |
+ services. If there is an error, then the current subscriptions will |
+ remain unchanged. |
+ </p> |
+ <params> |
+ <field name="subscriptions"> |
+ <list> |
+ <ref>ExecutionService</ref> |
+ </list> |
+ <p> |
+ A list of the services being subscribed to. |
+ </p> |
+ </field> |
+ </params> |
+ </request> |
+ <notification event="launchData"> |
+ <p> |
+ Reports information needed to allow a single file to be launched. |
+ </p> |
+ <p> |
+ This notification is not subscribed to by default. Clients can |
+ subscribe by including the value "LAUNCH_DATA" in the list of services |
+ passed in an <tt>execution.setSubscriptions</tt> request. |
+ </p> |
+ <params> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The file for which launch data is being provided. This will either |
+ be a Dart library or an HTML file. |
+ </p> |
+ </field> |
+ <field name="kind" optional="true"> |
+ <ref>ExecutableKind</ref> |
+ <p> |
+ The kind of the executable file. This field is omitted if the file |
+ is not a Dart file. |
+ </p> |
+ </field> |
+ <field name="referencedFiles" optional="true"> |
+ <list> |
+ <ref>FilePath</ref> |
+ </list> |
+ <p> |
+ A list of the Dart files that are referenced by the file. This |
+ field is omitted if the file is not an HTML file. |
+ </p> |
+ </field> |
+ </params> |
+ </notification> |
+</domain> |
+<domain name="diagnostic"> |
+ <p> |
+ The diagnostic domain contains server diagnostics APIs. |
+ </p> |
+ <request method="getDiagnostics"> |
+ <p>Return server diagnostics.</p> |
+ <result> |
+ <field name="contexts"> |
+ <list> |
+ <ref>ContextData</ref> |
+ </list> |
+ <p>The list of analysis contexts.</p> |
+ </field> |
+ </result> |
+ </request> |
+ <request method="getServerPort"> |
+ <p> |
+ Return the port of the diagnostic web server. If the server is not running |
+ this call will start the server. If unable to start the diagnostic web |
+ server, |
+ this call will return an error of <tt>DEBUG_PORT_COULD_NOT_BE_OPENED</tt>. |
+ </p> |
+ <result> |
+ <field name="port"> |
+ <ref>int</ref> |
+ <p>The diagnostic server port.</p> |
+ </field> |
+ </result> |
+ </request> |
+</domain> |
+<types> |
+ <h2 class="domain"><a name="types">Types</a></h2> |
+ <p> |
+ This section contains descriptions of the data types referenced |
+ in the API’s of the various domains. |
+ </p> |
+ <include path="../../../analyzer_plugin/tool/spec/common_types_spec.html" |
+ import="package:analyzer_plugin/protocol/protocol_common.dart"></include> |
+ <type name="AnalysisErrorFixes"> |
+ <p> |
+ A list of fixes associated with a specific error. |
+ </p> |
+ <object> |
+ <field name="error"> |
+ <ref>AnalysisError</ref> |
+ <p> |
+ The error with which the fixes are associated. |
+ </p> |
+ </field> |
+ <field name="fixes"> |
+ <list> |
+ <ref>SourceChange</ref> |
+ </list> |
+ <p> |
+ The fixes associated with the error. |
+ </p> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="AnalysisOptions" deprecated="true"> |
+ <p><b>Deprecated:</b> the only reference to this type has been |
+ deprecated.</p> |
+ <p> |
+ A set of options controlling what kind of analysis is to be |
+ performed. If the value of a field is omitted the value of the |
+ option will not be changed. |
+ </p> |
+ <object> |
+ <field name="enableAsync" optional="true" deprecated="true"> |
+ <ref>bool</ref> |
+ <p><b>Deprecated:</b> this feature is always enabled.</p> |
<p> |
- This notification is not subscribed to by default. Clients can |
- subscribe by including the value "LAUNCH_DATA" in the list of services |
- passed in an <tt>execution.setSubscriptions</tt> request. |
+ True if the client wants to enable support for the |
+ proposed async feature. |
</p> |
- <params> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file for which launch data is being provided. This will either |
- be a Dart library or an HTML file. |
- </p> |
- </field> |
- <field name="kind" optional="true"> |
- <ref>ExecutableKind</ref> |
- <p> |
- The kind of the executable file. This field is omitted if the file |
- is not a Dart file. |
- </p> |
- </field> |
- <field name="referencedFiles" optional="true"> |
- <list><ref>FilePath</ref></list> |
- <p> |
- A list of the Dart files that are referenced by the file. This |
- field is omitted if the file is not an HTML file. |
- </p> |
- </field> |
- </params> |
- </notification> |
- </domain> |
- <domain name="diagnostic"> |
- <p> |
- The diagnostic domain contains server diagnostics APIs. |
- </p> |
- <request method="getDiagnostics"> |
- <p>Return server diagnostics.</p> |
- <result> |
- <field name="contexts"> |
- <list><ref>ContextData</ref></list> |
- <p>The list of analysis contexts.</p> |
- </field> |
- </result> |
- </request> |
- <request method="getServerPort"> |
- <p> |
- Return the port of the diagnostic web server. If the server is not running |
- this call will start the server. If unable to start the diagnostic web server, |
- this call will return an error of <tt>DEBUG_PORT_COULD_NOT_BE_OPENED</tt>. |
- </p> |
- <result> |
- <field name="port"> |
- <ref>int</ref> |
- <p>The diagnostic server port.</p> |
- </field> |
- </result> |
- </request> |
- </domain> |
- <types> |
- <h2 class="domain"><a name="types">Types</a></h2> |
- <p> |
- This section contains descriptions of the data types referenced |
- in the API’s of the various domains. |
- </p> |
- <type name="AddContentOverlay"> |
+ </field> |
+ <field name="enableDeferredLoading" optional="true" deprecated="true"> |
+ <ref>bool</ref> |
+ <p><b>Deprecated:</b> this feature is always enabled.</p> |
<p> |
- A directive to begin overlaying the contents of a file. The |
- supplied content will be used for analysis in place of the |
- file contents in the filesystem. |
+ True if the client wants to enable support for the |
+ proposed deferred loading feature. |
</p> |
+ </field> |
+ <field name="enableEnums" optional="true" deprecated="true"> |
+ <ref>bool</ref> |
+ <p><b>Deprecated:</b> this feature is always enabled.</p> |
<p> |
- If this directive is used on a file that already has a file |
- content overlay, the old overlay is discarded and replaced |
- with the new one. |
+ True if the client wants to enable support for the |
+ proposed enum feature. |
</p> |
- <object> |
- <field name="type" value="add"><ref>String</ref></field> |
- <field name="content"> |
- <ref>String</ref> |
- <p> |
- The new content of the file. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="AnalysisError"> |
+ </field> |
+ <field name="enableNullAwareOperators" optional="true" deprecated="true"> |
+ <ref>bool</ref> |
+ <p><b>Deprecated:</b> this feature is always enabled.</p> |
<p> |
- An indication of an error, warning, or hint that was produced |
- by the analysis. |
+ True if the client wants to enable support for the |
+ proposed "null aware operators" feature. |
</p> |
- <object> |
- <field name="severity"> |
- <ref>AnalysisErrorSeverity</ref> |
- <p> |
- The severity of the error. |
- </p> |
- </field> |
- <field name="type"> |
- <ref>AnalysisErrorType</ref> |
- <p> |
- The type of the error. |
- </p> |
- </field> |
- <field name="location"> |
- <ref>Location</ref> |
- <p> |
- The location associated with the error. |
- </p> |
- </field> |
- <field name="message"> |
- <ref>String</ref> |
- <p> |
- The message to be displayed for this error. The message |
- should indicate what is wrong with the code and why it is |
- wrong. |
- </p> |
- </field> |
- <field name="correction" optional="true"> |
- <ref>String</ref> |
- <p> |
- The correction message to be displayed for this error. The |
- correction message should indicate how the user can fix |
- the error. The field is omitted if there is no correction |
- message associated with the error code. |
- </p> |
- </field> |
- <field name="code"> |
- <ref>String</ref> |
- <p> |
- The name, as a string, of the error code associated with this error. |
- </p> |
- </field> |
- <field name="hasFix" optional="true"> |
- <ref>bool</ref> |
- <p> |
- A hint to indicate to interested clients that this error has |
- an associated fix (or fixes). The absence of this field implies |
- there are not known to be fixes. Note that since the operation |
- to calculate whether fixes apply needs to be performant it is |
- possible that complicated tests will be skipped and a false |
- negative returned. For this reason, this attribute should be |
- treated as a "hint". Despite the possibility of false negatives, |
- no false positives should be returned. If a client sees this |
- flag set they can proceed with the confidence that there are in |
- fact associated fixes. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="AnalysisErrorFixes"> |
+ </field> |
+ <field name="enableSuperMixins" optional="true"> |
+ <ref>bool</ref> |
<p> |
- A list of fixes associated with a specific error. |
+ True if the client wants to enable support for the |
+ proposed "less restricted mixins" proposal (DEP 34). |
</p> |
- <object> |
- <field name="error"> |
- <ref>AnalysisError</ref> |
- <p> |
- The error with which the fixes are associated. |
- </p> |
- </field> |
- <field name="fixes"> |
- <list><ref>SourceChange</ref></list> |
- <p> |
- The fixes associated with the error. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="AnalysisErrorSeverity"> |
+ </field> |
+ <field name="generateDart2jsHints" optional="true"> |
+ <ref>bool</ref> |
<p> |
- An enumeration of the possible severities of analysis |
- errors. |
+ True if hints that are specific to dart2js should be |
+ generated. This option is ignored if generateHints is false. |
</p> |
- <enum> |
- <value><code>INFO</code></value> |
- <value><code>WARNING</code></value> |
- <value><code>ERROR</code></value> |
- </enum> |
- </type> |
- <type name="AnalysisErrorType"> |
- <p> |
- An enumeration of the possible types of analysis errors. |
- </p> |
- <enum> |
- <value><code>CHECKED_MODE_COMPILE_TIME_ERROR</code></value> |
- <value><code>COMPILE_TIME_ERROR</code></value> |
- <value><code>HINT</code></value> |
- <value><code>LINT</code></value> |
- <value><code>STATIC_TYPE_WARNING</code></value> |
- <value><code>STATIC_WARNING</code></value> |
- <value><code>SYNTACTIC_ERROR</code></value> |
- <value><code>TODO</code></value> |
- </enum> |
- </type> |
- <type name="AnalysisOptions" deprecated="true"> |
- <p><b>Deprecated:</b> the only reference to this type has been |
- deprecated.</p> |
- <p> |
- A set of options controlling what kind of analysis is to be |
- performed. If the value of a field is omitted the value of the |
- option will not be changed. |
- </p> |
- <object> |
- <field name="enableAsync" optional="true" deprecated="true"> |
- <ref>bool</ref> |
- <p><b>Deprecated:</b> this feature is always enabled.</p> |
- <p> |
- True if the client wants to enable support for the |
- proposed async feature. |
- </p> |
- </field> |
- <field name="enableDeferredLoading" optional="true" deprecated="true"> |
- <ref>bool</ref> |
- <p><b>Deprecated:</b> this feature is always enabled.</p> |
- <p> |
- True if the client wants to enable support for the |
- proposed deferred loading feature. |
- </p> |
- </field> |
- <field name="enableEnums" optional="true" deprecated="true"> |
- <ref>bool</ref> |
- <p><b>Deprecated:</b> this feature is always enabled.</p> |
- <p> |
- True if the client wants to enable support for the |
- proposed enum feature. |
- </p> |
- </field> |
- <field name="enableNullAwareOperators" optional="true" deprecated="true"> |
- <ref>bool</ref> |
- <p><b>Deprecated:</b> this feature is always enabled.</p> |
- <p> |
- True if the client wants to enable support for the |
- proposed "null aware operators" feature. |
- </p> |
- </field> |
- <field name="enableSuperMixins" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if the client wants to enable support for the |
- proposed "less restricted mixins" proposal (DEP 34). |
- </p> |
- </field> |
- <field name="generateDart2jsHints" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if hints that are specific to dart2js should be |
- generated. This option is ignored if generateHints is false. |
- </p> |
- </field> |
- <field name="generateHints" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if hints should be generated as part of generating |
- errors and warnings. |
- </p> |
- </field> |
- <field name="generateLints" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if lints should be generated as part of generating |
- errors and warnings. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="AnalysisService"> |
+ </field> |
+ <field name="generateHints" optional="true"> |
+ <ref>bool</ref> |
<p> |
- An enumeration of the services provided by the analysis domain that |
- are related to a specific list of files. |
+ True if hints should be generated as part of generating |
+ errors and warnings. |
</p> |
- <enum> |
- <value><code>FOLDING</code></value> |
- <value><code>HIGHLIGHTS</code></value> |
- <value><code>IMPLEMENTED</code></value> |
- <value> |
- <code>INVALIDATE</code> |
- <p> |
- This service is not currently implemented and will become a |
- GeneralAnalysisService in a future release. |
- </p> |
- </value> |
- <value><code>NAVIGATION</code></value> |
- <value><code>OCCURRENCES</code></value> |
- <value><code>OUTLINE</code></value> |
- <value><code>OVERRIDES</code></value> |
- </enum> |
- </type> |
- <type name="AnalysisStatus"> |
- <p> |
- An indication of the current state of analysis. |
- </p> |
- <object> |
- <field name="isAnalyzing"> |
- <ref>bool</ref> |
- <p>True if analysis is currently being performed.</p> |
- </field> |
- <field name="analysisTarget" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the current target of analysis. This field is |
- omitted if analyzing is false. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="ChangeContentOverlay"> |
+ </field> |
+ <field name="generateLints" optional="true"> |
+ <ref>bool</ref> |
<p> |
- A directive to modify an existing file content overlay. One or more |
- ranges of text are deleted from the old file content overlay and |
- replaced with new text. |
+ True if lints should be generated as part of generating |
+ errors and warnings. |
</p> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="AnalysisService"> |
+ <p> |
+ An enumeration of the services provided by the analysis domain that |
+ are related to a specific list of files. |
+ </p> |
+ <enum> |
+ <value><code>FOLDING</code></value> |
+ <value><code>HIGHLIGHTS</code></value> |
+ <value><code>IMPLEMENTED</code></value> |
+ <value> |
+ <code>INVALIDATE</code> |
+ <p> |
+ This service is not currently implemented and will become a |
+ GeneralAnalysisService in a future release. |
+ </p> |
+ </value> |
+ <value><code>NAVIGATION</code></value> |
+ <value><code>OCCURRENCES</code></value> |
+ <value><code>OUTLINE</code></value> |
+ <value><code>OVERRIDES</code></value> |
+ </enum> |
+ </type> |
+ <type name="AnalysisStatus"> |
+ <p> |
+ An indication of the current state of analysis. |
+ </p> |
+ <object> |
+ <field name="isAnalyzing"> |
+ <ref>bool</ref> |
+ <p>True if analysis is currently being performed.</p> |
+ </field> |
+ <field name="analysisTarget" optional="true"> |
+ <ref>String</ref> |
<p> |
- The edits are applied in the order in which they occur in the list. |
- This means that the offset of each edit must be correct under the |
- assumption that all previous edits have been applied. |
+ The name of the current target of analysis. This field is |
+ omitted if analyzing is false. |
</p> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="CompletionId"> |
+ <ref>String</ref> |
+ <p> |
+ An identifier used to associate completion results with a |
+ completion request. |
+ </p> |
+ </type> |
+ <type name="ContextData"> |
+ <p> |
+ Information about an analysis context. |
+ </p> |
+ <object> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- It is an error to use this overlay on a file that does not yet have |
- a file content overlay or that has had its overlay removed via |
- <a href="#type_RemoveContentOverlay">RemoveContentOverlay</a>. |
+ The name of the context. |
</p> |
+ </field> |
+ <field name="explicitFileCount"> |
+ <ref>int</ref> |
<p> |
- If any of the edits cannot be applied due to its offset or |
- length being out of range, an INVALID_OVERLAY_CHANGE error |
- will be reported. |
+ Explicitly analyzed files. |
</p> |
- <object> |
- <field name="type" value="change"><ref>String</ref></field> |
- <field name="edits"> |
- <list><ref>SourceEdit</ref></list> |
- <p> |
- The edits to be applied to the file. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="CompletionId"> |
- <ref>String</ref> |
+ </field> |
+ <field name="implicitFileCount"> |
+ <ref>int</ref> |
<p> |
- An identifier used to associate completion results with a |
- completion request. |
+ Implicitly analyzed files. |
</p> |
- </type> |
- <type name="CompletionSuggestion"> |
+ </field> |
+ <field name="workItemQueueLength"> |
+ <ref>int</ref> |
<p> |
- A suggestion for how to complete partially entered text. Many |
- of the fields are optional, depending on the kind of element |
- being suggested. |
+ The number of work items in the queue. |
</p> |
- <object> |
- <field name="kind"> |
- <ref>CompletionSuggestionKind</ref> |
- <p> |
- The kind of element being suggested. |
- </p> |
- </field> |
- <field name="relevance"> |
- <ref>int</ref> |
- <p> |
- The relevance of this completion suggestion |
- where a higher number indicates a higher relevance. |
- </p> |
- </field> |
- <field name="completion"> |
- <ref>String</ref> |
- <p> |
- The identifier to be inserted if the suggestion is |
- selected. If the suggestion is for a method or function, |
- the client might want to additionally insert a template |
- for the parameters. The information required in order to |
- do so is contained in other fields. |
- </p> |
- </field> |
- <field name="selectionOffset"> |
- <ref>int</ref> |
- <p> |
- The offset, relative to the beginning of the completion, |
- of where the selection should be placed after insertion. |
- </p> |
- </field> |
- <field name="selectionLength"> |
- <ref>int</ref> |
- <p> |
- The number of characters that should be selected after |
- insertion. |
- </p> |
- </field> |
- <field name="isDeprecated"> |
- <ref>bool</ref> |
- <p> |
- True if the suggested element is deprecated. |
- </p> |
- </field> |
- <field name="isPotential"> |
- <ref>bool</ref> |
- <p> |
- True if the element is not known to be valid for the |
- target. This happens if the type of the target is dynamic. |
- </p> |
- </field> |
- <field name="docSummary" optional="true"> |
- <ref>String</ref> |
- <p> |
- An abbreviated version of the Dartdoc associated with the |
- element being suggested, This field is omitted if there is |
- no Dartdoc associated with the element. |
- </p> |
- </field> |
- <field name="docComplete" optional="true"> |
- <ref>String</ref> |
- <p> |
- The Dartdoc associated with the element being suggested, |
- This field is omitted if there is no Dartdoc associated |
- with the element. |
- </p> |
- </field> |
- <field name="declaringType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The class that declares the element being suggested. This |
- field is omitted if the suggested element is not a member |
- of a class. |
- </p> |
- </field> |
- <field name="defaultArgumentListString" optional="true"> |
- <ref>String</ref> |
- <p> |
- A default String for use in generating argument list |
- source contents on the client side. |
- </p> |
- </field> |
- <field name="defaultArgumentListTextRanges" optional="true"> |
- <list><ref>int</ref></list> |
- <p> |
- Pairs of offsets and lengths describing 'defaultArgumentListString' |
- text ranges suitable for use by clients to set up linked edits of |
- default argument source contents. For example, given an argument |
- list string 'x, y', the corresponding text range [0, 1, 3, 1], |
- indicates two text ranges of length 1, starting at offsets 0 and 3. |
- Clients can use these ranges to treat the 'x' and 'y' values |
- specially for linked edits. |
- </p> |
- </field> |
- <field name="element" optional="true"> |
- <ref>Element</ref> |
- <p> |
- Information about the element reference being suggested. |
- </p> |
- </field> |
- <field name="returnType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The return type of the getter, function or method |
- or the type of the field being suggested. |
- This field is omitted if the suggested element |
- is not a getter, function or method. |
- </p> |
- </field> |
- <field name="parameterNames" optional="true"> |
- <list><ref>String</ref></list> |
- <p> |
- The names of the parameters of the function or method |
- being suggested. This field is omitted if the suggested |
- element is not a setter, function or method. |
- </p> |
- </field> |
- <field name="parameterTypes" optional="true"> |
- <list><ref>String</ref></list> |
- <p> |
- The types of the parameters of the function or method |
- being suggested. This field is omitted if the |
- parameterNames field is omitted. |
- </p> |
- </field> |
- <field name="requiredParameterCount" optional="true"> |
- <ref>int</ref> |
- <p> |
- The number of required parameters for the function or |
- method being suggested. This field is omitted if the |
- parameterNames field is omitted. |
- </p> |
- </field> |
- <field name="hasNamedParameters" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if the function or method being suggested has at |
- least one named parameter. This field is omitted if the |
- parameterNames field is omitted. |
- </p> |
- </field> |
- <field name="parameterName" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the optional parameter being suggested. This |
- field is omitted if the suggestion is not the addition of |
- an optional argument within an argument list. |
- </p> |
- </field> |
- <field name="parameterType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The type of the options parameter being suggested. This |
- field is omitted if the parameterName field is omitted. |
- </p> |
- </field> |
- <field name="importUri" optional="true"> |
- <ref>String</ref> |
- <p> |
- The import to be added if the suggestion is out of scope |
- and needs an import to be added to be in scope. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="CompletionSuggestionKind"> |
+ </field> |
+ <field name="cacheEntryExceptions"> |
+ <list> |
+ <ref>String</ref> |
+ </list> |
<p> |
- An enumeration of the kinds of elements that can be included |
- in a completion suggestion. |
+ Exceptions associated with cache entries. |
</p> |
- <enum> |
- <value> |
- <code>ARGUMENT_LIST</code> |
- <p> |
- A list of arguments for the method or function that is being invoked. |
- For this suggestion kind, the completion field is a textual representation |
- of the invocation and the parameterNames, parameterTypes, and requiredParameterCount |
- attributes are defined. |
- </p> |
- </value> |
- <value><code>IMPORT</code></value> |
- <value> |
- <code>IDENTIFIER</code> |
- <p> |
- The element identifier should be inserted at the completion location. |
- For example "someMethod" in import 'myLib.dart' show someMethod; . |
- For suggestions of this kind, the element attribute is defined |
- and the completion field is the element's identifier. |
- </p> |
- </value> |
- <value> |
- <code>INVOCATION</code> |
- <p> |
- The element is being invoked at the completion location. |
- For example, "someMethod" in x.someMethod(); . |
- For suggestions of this kind, the element attribute is defined |
- and the completion field is the element's identifier. |
- </p> |
- </value> |
- <value> |
- <code>KEYWORD</code> |
- <p> |
- A keyword is being suggested. |
- For suggestions of this kind, the completion is the keyword. |
- </p> |
- </value> |
- <value> |
- <code>NAMED_ARGUMENT</code> |
- <p> |
- A named argument for the current callsite is being suggested. |
- For suggestions of this kind, the completion is |
- the named argument identifier including a trailing ':' and space. |
- </p> |
- </value> |
- <value><code>OPTIONAL_ARGUMENT</code></value> |
- <value><code>PARAMETER</code></value> |
- </enum> |
- </type> |
- <type name="ContextData"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="ExecutableFile"> |
+ <p> |
+ A description of an executable file. |
+ </p> |
+ <object> |
+ <field name="file"> |
+ <ref>FilePath</ref> |
<p> |
- Information about an analysis context. |
+ The path of the executable file. |
</p> |
- <object> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name of the context. |
- </p> |
- </field> |
- <field name="explicitFileCount"> |
- <ref>int</ref> |
- <p> |
- Explicitly analyzed files. |
- </p> |
- </field> |
- <field name="implicitFileCount"> |
- <ref>int</ref> |
- <p> |
- Implicitly analyzed files. |
- </p> |
- </field> |
- <field name="workItemQueueLength"> |
- <ref>int</ref> |
- <p> |
- The number of work items in the queue. |
- </p> |
- </field> |
- <field name="cacheEntryExceptions"> |
- <list><ref>String</ref></list> |
- <p> |
- Exceptions associated with cache entries. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="Element"> |
+ </field> |
+ <field name="kind"> |
+ <ref>ExecutableKind</ref> |
<p> |
- Information about an element (something that can be declared |
- in code). |
+ The kind of the executable file. |
</p> |
- <object> |
- <field name="kind"> |
- <ref>ElementKind</ref> |
- <p> |
- The kind of the element. |
- </p> |
- </field> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name of the element. This is typically used as the |
- label in the outline. |
- </p> |
- </field> |
- <field name="location" optional="true"> |
- <ref>Location</ref> |
- <p> |
- The location of the name in the declaration of the |
- element. |
- </p> |
- </field> |
- <field name="flags"> |
- <ref>int</ref> |
- <p> |
- A bit-map containing the following flags: |
- </p> |
- <ul> |
- <li>0x01 - set if the element is explicitly or implicitly abstract</li> |
- <li>0x02 - set if the element was declared to be ‘const’</li> |
- <li>0x04 - set if the element was declared to be ‘final’</li> |
- <li>0x08 - set if the element is a static member of a class or is a top-level function or field</li> |
- <li>0x10 - set if the element is private</li> |
- <li>0x20 - set if the element is deprecated</li> |
- </ul> |
- </field> |
- <field name="parameters" optional="true"> |
- <ref>String</ref> |
- <p> |
- The parameter list for the element. If the element is not |
- a method or function this field will not be defined. If |
- the element doesn't have parameters (e.g. getter), this field |
- will not be defined. If the element has zero parameters, this |
- field will have a value of "()". |
- </p> |
- </field> |
- <field name="returnType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The return type of the element. If the element is not a |
- method or function this field will not be defined. If the |
- element does not have a declared return type, this field |
- will contain an empty string. |
- </p> |
- </field> |
- <field name="typeParameters" optional="true"> |
- <ref>String</ref> |
- <p> |
- The type parameter list for the element. If the element doesn't |
- have type parameters, this field will not be defined. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="ElementKind"> |
- <p> |
- An enumeration of the kinds of elements. |
- </p> |
- <enum> |
- <value><code>CLASS</code></value> |
- <value><code>CLASS_TYPE_ALIAS</code></value> |
- <value><code>COMPILATION_UNIT</code></value> |
- <value><code>CONSTRUCTOR</code></value> |
- <value><code>ENUM</code></value> |
- <value><code>ENUM_CONSTANT</code></value> |
- <value><code>FIELD</code></value> |
- <value><code>FILE</code></value> |
- <value><code>FUNCTION</code></value> |
- <value><code>FUNCTION_TYPE_ALIAS</code></value> |
- <value><code>GETTER</code></value> |
- <value><code>LABEL</code></value> |
- <value><code>LIBRARY</code></value> |
- <value><code>LOCAL_VARIABLE</code></value> |
- <value><code>METHOD</code></value> |
- <value><code>PARAMETER</code></value> |
- <value><code>PREFIX</code></value> |
- <value><code>SETTER</code></value> |
- <value><code>TOP_LEVEL_VARIABLE</code></value> |
- <value><code>TYPE_PARAMETER</code></value> |
- <value deprecated="true"> |
- <code>UNIT_TEST_GROUP</code> |
- <p><b>Deprecated:</b> support for tests was removed.</p> |
- </value> |
- <value deprecated="true"> |
- <code>UNIT_TEST_TEST</code> |
- <p><b>Deprecated:</b> support for tests was removed.</p> |
- </value> |
- <value><code>UNKNOWN</code></value> |
- </enum> |
- </type> |
- <type name="ExecutableFile"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="ExecutableKind"> |
+ <p> |
+ An enumeration of the kinds of executable files. |
+ </p> |
+ <enum> |
+ <value><code>CLIENT</code></value> |
+ <value><code>EITHER</code></value> |
+ <value><code>NOT_EXECUTABLE</code></value> |
+ <value><code>SERVER</code></value> |
+ </enum> |
+ </type> |
+ <type name="ExecutionContextId"> |
+ <ref>String</ref> |
+ <p> |
+ The identifier for a execution context. |
+ </p> |
+ </type> |
+ <type name="ExecutionService"> |
+ <p> |
+ An enumeration of the services provided by the execution |
+ domain. |
+ </p> |
+ <enum> |
+ <value><code>LAUNCH_DATA</code></value> |
+ </enum> |
+ </type> |
+ <type name="FileKind"> |
+ <p> |
+ An enumeration of the kinds of files. |
+ </p> |
+ <enum> |
+ <value><code>LIBRARY</code></value> |
+ <value><code>PART</code></value> |
+ </enum> |
+ </type> |
+ <type name="GeneralAnalysisService"> |
+ <p> |
+ An enumeration of the services provided by the analysis domain that are |
+ general in nature (that is, are not specific to some list of files). |
+ </p> |
+ <enum> |
+ <value><code>ANALYZED_FILES</code></value> |
+ </enum> |
+ </type> |
+ <type name="HoverInformation"> |
+ <p> |
+ The hover information associated with a specific location. |
+ </p> |
+ <object> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- A description of an executable file. |
+ The offset of the range of characters that encompasses the |
+ cursor position and has the same hover information as the |
+ cursor position. |
</p> |
- <object> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The path of the executable file. |
- </p> |
- </field> |
- <field name="kind"> |
- <ref>ExecutableKind</ref> |
- <p> |
- The kind of the executable file. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="ExecutableKind"> |
- <p> |
- An enumeration of the kinds of executable files. |
- </p> |
- <enum> |
- <value><code>CLIENT</code></value> |
- <value><code>EITHER</code></value> |
- <value><code>NOT_EXECUTABLE</code></value> |
- <value><code>SERVER</code></value> |
- </enum> |
- </type> |
- <type name="ExecutionContextId"> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the range of characters that encompasses the |
+ cursor position and has the same hover information as the |
+ cursor position. |
+ </p> |
+ </field> |
+ <field name="containingLibraryPath" optional="true"> |
<ref>String</ref> |
<p> |
- The identifier for a execution context. |
+ The path to the defining compilation unit of the library |
+ in which the referenced element is declared. This data is |
+ omitted if there is no referenced element, or if the |
+ element is declared inside an HTML file. |
</p> |
- </type> |
- <type name="ExecutionService"> |
+ </field> |
+ <field name="containingLibraryName" optional="true"> |
+ <ref>String</ref> |
<p> |
- An enumeration of the services provided by the execution |
- domain. |
+ The name of the library in which the referenced element is |
+ declared. This data is omitted if there is no referenced |
+ element, or if the element is declared inside an HTML |
+ file. |
</p> |
- <enum> |
- <value><code>LAUNCH_DATA</code></value> |
- </enum> |
- </type> |
- <type name="FileKind"> |
+ </field> |
+ <field name="containingClassDescription" optional="true"> |
+ <ref>String</ref> |
<p> |
- An enumeration of the kinds of files. |
+ A human-readable description of the class declaring the element |
+ being referenced. This data is omitted if there is no referenced |
+ element, or if the element is not a class member. |
</p> |
- <enum> |
- <value><code>LIBRARY</code></value> |
- <value><code>PART</code></value> |
- </enum> |
- </type> |
- <type name="FilePath"> |
+ </field> |
+ <field name="dartdoc" optional="true"> |
<ref>String</ref> |
<p> |
- The absolute, normalized path of a file. |
+ The dartdoc associated with the referenced element. Other |
+ than the removal of the comment delimiters, including |
+ leading asterisks in the case of a block comment, the |
+ dartdoc is unprocessed markdown. This data is omitted if |
+ there is no referenced element, or if the element has no |
+ dartdoc. |
</p> |
+ </field> |
+ <field name="elementDescription" optional="true"> |
+ <ref>String</ref> |
<p> |
- If the format of a file path in a request is not valid, e.g. the |
- path is not absolute or is not normalized, then an error of type |
- <tt>INVALID_FILE_PATH_FORMAT</tt> will be generated. |
+ A human-readable description of the element being |
+ referenced. This data is omitted if there is no referenced |
+ element. |
</p> |
- </type> |
- <type name="FoldingKind"> |
+ </field> |
+ <field name="elementKind" optional="true"> |
+ <ref>String</ref> |
<p> |
- An enumeration of the kinds of folding regions. |
+ A human-readable description of the kind of element being |
+ referenced (such as "class" or "function type |
+ alias"). This data is omitted if there is no referenced |
+ element. |
</p> |
- <enum> |
- <value><code>COMMENT</code></value> |
- <value><code>CLASS_MEMBER</code></value> |
- <value><code>DIRECTIVES</code></value> |
- <value><code>DOCUMENTATION_COMMENT</code></value> |
- <value><code>TOP_LEVEL_DECLARATION</code></value> |
- </enum> |
- </type> |
- <type name="FoldingRegion"> |
+ </field> |
+ <field name="isDeprecated" optional="true"> |
+ <ref>bool</ref> |
<p> |
- A description of a region that can be folded. |
+ True if the referenced element is deprecated. |
</p> |
- <object> |
- <field name="kind"> |
- <ref>FoldingKind</ref> |
- <p> |
- The kind of the region. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region to be folded. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region to be folded. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="GeneralAnalysisService"> |
+ </field> |
+ <field name="parameter" optional="true"> |
+ <ref>String</ref> |
<p> |
- An enumeration of the services provided by the analysis domain that are |
- general in nature (that is, are not specific to some list of files). |
+ A human-readable description of the parameter |
+ corresponding to the expression being hovered over. This |
+ data is omitted if the location is not in an argument to a |
+ function. |
</p> |
- <enum> |
- <value><code>ANALYZED_FILES</code></value> |
- </enum> |
- </type> |
- <type name="HighlightRegion"> |
+ </field> |
+ <field name="propagatedType" optional="true"> |
+ <ref>String</ref> |
<p> |
- A description of a region that could have special highlighting |
- associated with it. |
+ The name of the propagated type of the expression. This |
+ data is omitted if the location does not correspond to an |
+ expression or if there is no propagated type information. |
</p> |
- <object> |
- <field name="type"> |
- <ref>HighlightRegionType</ref> |
- <p> |
- The type of highlight associated with the region. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region to be highlighted. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region to be highlighted. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="HighlightRegionType"> |
- <p> |
- An enumeration of the kinds of highlighting that can be |
- applied to files. |
- </p> |
- <enum> |
- <value><code>ANNOTATION</code></value> |
- <value><code>BUILT_IN</code></value> |
- <value><code>CLASS</code></value> |
- <value><code>COMMENT_BLOCK</code></value> |
- <value><code>COMMENT_DOCUMENTATION</code></value> |
- <value><code>COMMENT_END_OF_LINE</code></value> |
- <value><code>CONSTRUCTOR</code></value> |
- <value><code>DIRECTIVE</code></value> |
- <value> |
- <code>DYNAMIC_TYPE</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>DYNAMIC_LOCAL_VARIABLE_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>DYNAMIC_LOCAL_VARIABLE_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>DYNAMIC_PARAMETER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>DYNAMIC_PARAMETER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value><code>ENUM</code></value> |
- <value><code>ENUM_CONSTANT</code></value> |
- <value> |
- <code>FIELD</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>FIELD_STATIC</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>FUNCTION</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>FUNCTION_DECLARATION</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value><code>FUNCTION_TYPE_ALIAS</code></value> |
- <value> |
- <code>GETTER_DECLARATION</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value><code>IDENTIFIER_DEFAULT</code></value> |
- <value><code>IMPORT_PREFIX</code></value> |
- <value> |
- <code>INSTANCE_FIELD_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_FIELD_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_GETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_GETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_METHOD_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_METHOD_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_SETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INSTANCE_SETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>INVALID_STRING_ESCAPE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value><code>KEYWORD</code></value> |
- <value><code>LABEL</code></value> |
- <value> |
- <code>LIBRARY_NAME</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value><code>LITERAL_BOOLEAN</code></value> |
- <value><code>LITERAL_DOUBLE</code></value> |
- <value><code>LITERAL_INTEGER</code></value> |
- <value><code>LITERAL_LIST</code></value> |
- <value><code>LITERAL_MAP</code></value> |
- <value><code>LITERAL_STRING</code></value> |
- <value> |
- <code>LOCAL_FUNCTION_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>LOCAL_FUNCTION_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>LOCAL_VARIABLE</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value><code>LOCAL_VARIABLE_DECLARATION</code></value> |
- <value> |
- <code>LOCAL_VARIABLE_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>METHOD</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>METHOD_DECLARATION</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>METHOD_DECLARATION_STATIC</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>METHOD_STATIC</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>PARAMETER</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>SETTER_DECLARATION</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_VARIABLE</code> |
- <p>Only for version 1 of highlight.</p> |
- </value> |
- <value> |
- <code>PARAMETER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>PARAMETER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_FIELD_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_GETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_GETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_METHOD_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_METHOD_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_SETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>STATIC_SETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_FUNCTION_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_FUNCTION_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_GETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_GETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_SETTER_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_SETTER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>TOP_LEVEL_VARIABLE_DECLARATION</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value><code>TYPE_NAME_DYNAMIC</code></value> |
- <value><code>TYPE_PARAMETER</code></value> |
- <value> |
- <code>UNRESOLVED_INSTANCE_MEMBER_REFERENCE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- <value> |
- <code>VALID_STRING_ESCAPE</code> |
- <p>Only for version 2 of highlight.</p> |
- </value> |
- </enum> |
- </type> |
- <type name="HoverInformation"> |
+ </field> |
+ <field name="staticType" optional="true"> |
+ <ref>String</ref> |
<p> |
- The hover information associated with a specific location. |
+ The name of the static type of the expression. This data |
+ is omitted if the location does not correspond to an |
+ expression. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the range of characters that encompasses the |
- cursor position and has the same hover information as the |
- cursor position. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the range of characters that encompasses the |
- cursor position and has the same hover information as the |
- cursor position. |
- </p> |
- </field> |
- <field name="containingLibraryPath" optional="true"> |
- <ref>String</ref> |
- <p> |
- The path to the defining compilation unit of the library |
- in which the referenced element is declared. This data is |
- omitted if there is no referenced element, or if the |
- element is declared inside an HTML file. |
- </p> |
- </field> |
- <field name="containingLibraryName" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the library in which the referenced element is |
- declared. This data is omitted if there is no referenced |
- element, or if the element is declared inside an HTML |
- file. |
- </p> |
- </field> |
- <field name="containingClassDescription" optional="true"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the class declaring the element |
- being referenced. This data is omitted if there is no referenced |
- element, or if the element is not a class member. |
- </p> |
- </field> |
- <field name="dartdoc" optional="true"> |
- <ref>String</ref> |
- <p> |
- The dartdoc associated with the referenced element. Other |
- than the removal of the comment delimiters, including |
- leading asterisks in the case of a block comment, the |
- dartdoc is unprocessed markdown. This data is omitted if |
- there is no referenced element, or if the element has no |
- dartdoc. |
- </p> |
- </field> |
- <field name="elementDescription" optional="true"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the element being |
- referenced. This data is omitted if there is no referenced |
- element. |
- </p> |
- </field> |
- <field name="elementKind" optional="true"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the kind of element being |
- referenced (such as "class" or "function type |
- alias"). This data is omitted if there is no referenced |
- element. |
- </p> |
- </field> |
- <field name="isDeprecated" optional="true"> |
- <ref>bool</ref> |
- <p> |
- True if the referenced element is deprecated. |
- </p> |
- </field> |
- <field name="parameter" optional="true"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the parameter |
- corresponding to the expression being hovered over. This |
- data is omitted if the location is not in an argument to a |
- function. |
- </p> |
- </field> |
- <field name="propagatedType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the propagated type of the expression. This |
- data is omitted if the location does not correspond to an |
- expression or if there is no propagated type information. |
- </p> |
- </field> |
- <field name="staticType" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the static type of the expression. This data |
- is omitted if the location does not correspond to an |
- expression. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="ImplementedClass"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="ImplementedClass"> |
+ <p> |
+ A description of a class that is implemented or extended. |
+ </p> |
+ <object> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- A description of a class that is implemented or extended. |
+ The offset of the name of the implemented class. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the name of the implemented class. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the name of the implemented class. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="ImplementedMember"> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
<p> |
- A description of a class member that is implemented or overridden. |
+ The length of the name of the implemented class. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the name of the implemented member. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the name of the implemented member. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="LinkedEditGroup"> |
- <p> |
- A collection of positions that should be linked (edited |
- simultaneously) for the purposes of updating code after a |
- source change. For example, if a set of edits introduced a |
- new variable name, the group would contain all of the |
- positions of the variable name so that if the client wanted |
- to let the user edit the variable name after the operation, |
- all occurrences of the name could be edited simultaneously. |
- </p> |
- <object> |
- <field name="positions"> |
- <list><ref>Position</ref></list> |
- <p> |
- The positions of the regions that should be edited |
- simultaneously. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the regions that should be edited |
- simultaneously. |
- </p> |
- </field> |
- <field name="suggestions"> |
- <list><ref>LinkedEditSuggestion</ref></list> |
- <p> |
- Pre-computed suggestions for what every region might |
- want to be changed to. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="LinkedEditSuggestion"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="ImplementedMember"> |
+ <p> |
+ A description of a class member that is implemented or overridden. |
+ </p> |
+ <object> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- A suggestion of a value that could be used to replace all of |
- the linked edit regions in a LinkedEditGroup. |
+ The offset of the name of the implemented member. |
</p> |
- <object> |
- <field name="value"> |
- <ref>String</ref> |
- <p> |
- The value that could be used to replace all of the linked |
- edit regions. |
- </p> |
- </field> |
- <field name="kind"> |
- <ref>LinkedEditSuggestionKind</ref> |
- <p> |
- The kind of value being proposed. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="LinkedEditSuggestionKind"> |
- <p> |
- An enumeration of the kind of values that can be suggested |
- for a linked edit. |
- </p> |
- <enum> |
- <value><code>METHOD</code></value> |
- <value><code>PARAMETER</code></value> |
- <value><code>TYPE</code></value> |
- <value><code>VARIABLE</code></value> |
- </enum> |
- </type> |
- <type name="Location"> |
- <p> |
- A location (character range) within a file. |
- </p> |
- <object> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the range. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the range. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the range. |
- </p> |
- </field> |
- <field name="startLine"> |
- <ref>int</ref> |
- <p> |
- The one-based index of the line containing the first |
- character of the range. |
- </p> |
- </field> |
- <field name="startColumn"> |
- <ref>int</ref> |
- <p> |
- The one-based index of the column containing the first |
- character of the range. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="NavigationRegion"> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
<p> |
- A description of a region from which the user can navigate to |
- the declaration of an element. |
+ The length of the name of the implemented member. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region from which the user can navigate. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region from which the user can navigate. |
- </p> |
- </field> |
- <field name="targets"> |
- <list><ref>int</ref></list> |
- <p> |
- The indexes of the targets (in the enclosing navigation response) |
- to which the given region is bound. By opening the target, clients |
- can implement one form of navigation. This list cannot be empty. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="NavigationTarget"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="Override"> |
+ <p> |
+ A description of a member that overrides an inherited member. |
+ </p> |
+ <object> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset of the name of the overriding member. |
+ </p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the name of the overriding member. |
+ </p> |
+ </field> |
+ <field name="superclassMember" optional="true"> |
+ <ref>OverriddenMember</ref> |
+ <p> |
+ The member inherited from a superclass that is overridden |
+ by the overriding member. The field is omitted if there is |
+ no superclass member, in which case there must be at least |
+ one interface member. |
+ </p> |
+ </field> |
+ <field name="interfaceMembers" optional="true"> |
+ <list> |
+ <ref>OverriddenMember</ref> |
+ </list> |
+ <p> |
+ The members inherited from interfaces that are overridden |
+ by the overriding member. The field is omitted if there |
+ are no interface members, in which case there must be a |
+ superclass member. |
+ </p> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="OverriddenMember"> |
+ <p> |
+ A description of a member that is being overridden. |
+ </p> |
+ <object> |
+ <field name="element"> |
+ <ref>Element</ref> |
<p> |
- A description of a target to which the user can navigate. |
+ The element that is being overridden. |
</p> |
- <object> |
- <field name="kind"> |
- <ref>ElementKind</ref> |
- <p> |
- The kind of the element. |
- </p> |
- </field> |
- <field name="fileIndex"> |
- <ref>int</ref> |
- <p> |
- The index of the file (in the enclosing navigation response) to |
- navigate to. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region to which the user can navigate. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region to which the user can navigate. |
- </p> |
- </field> |
- <field name="startLine"> |
- <ref>int</ref> |
- <p> |
- The one-based index of the line containing the first |
- character of the region. |
- </p> |
- </field> |
- <field name="startColumn"> |
- <ref>int</ref> |
- <p> |
- The one-based index of the column containing the first |
- character of the region. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="Occurrences"> |
+ </field> |
+ <field name="className"> |
+ <ref>String</ref> |
<p> |
- A description of the references to a single element within a |
- single file. |
+ The name of the class in which the member is defined. |
</p> |
- <object> |
- <field name="element"> |
- <ref>Element</ref> |
- <p> |
- The element that was referenced. |
- </p> |
- </field> |
- <field name="offsets"> |
- <list><ref>int</ref></list> |
- <p> |
- The offsets of the name of the referenced element within |
- the file. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the name of the referenced element. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="Outline"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="PubStatus"> |
+ <p> |
+ An indication of the current state of pub execution. |
+ </p> |
+ <object> |
+ <field name="isListingPackageDirs"> |
+ <ref>bool</ref> |
<p> |
- An node in the outline structure of a file. |
+ True if the server is currently running pub to produce a list of |
+ package directories. |
</p> |
- <object> |
- <field name="element"> |
- <ref>Element</ref> |
- <p> |
- A description of the element represented by this node. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the first character of the element. This is |
- different than the offset in the Element, which if the |
- offset of the name of the element. It can be used, for |
- example, to map locations in the file back to an outline. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the element. |
- </p> |
- </field> |
- <field name="children" optional="true"> |
- <list><ref>Outline</ref></list> |
- <p> |
- The children of the node. The field will be omitted if the |
- node has no children. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="Override"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="RefactoringFeedback"> |
+ <p> |
+ An abstract superclass of all refactoring feedbacks. |
+ </p> |
+ <object> |
+ </object> |
+ </type> |
+ <type name="RefactoringOptions"> |
+ <p> |
+ An abstract superclass of all refactoring options. |
+ </p> |
+ <object> |
+ </object> |
+ </type> |
+ <type name="RequestError"> |
+ <p> |
+ An indication of a problem with the execution of the server, |
+ typically in response to a request. |
+ </p> |
+ <object> |
+ <field name="code"> |
+ <ref>RequestErrorCode</ref> |
<p> |
- A description of a member that overrides an inherited member. |
+ A code that uniquely identifies the error that occurred. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the name of the overriding member. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the name of the overriding member. |
- </p> |
- </field> |
- <field name="superclassMember" optional="true"> |
- <ref>OverriddenMember</ref> |
- <p> |
- The member inherited from a superclass that is overridden |
- by the overriding member. The field is omitted if there is |
- no superclass member, in which case there must be at least |
- one interface member. |
- </p> |
- </field> |
- <field name="interfaceMembers" optional="true"> |
- <list><ref>OverriddenMember</ref></list> |
- <p> |
- The members inherited from interfaces that are overridden |
- by the overriding member. The field is omitted if there |
- are no interface members, in which case there must be a |
- superclass member. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="OverriddenMember"> |
+ </field> |
+ <field name="message"> |
+ <ref>String</ref> |
<p> |
- A description of a member that is being overridden. |
+ A short description of the error. |
</p> |
- <object> |
- <field name="element"> |
- <ref>Element</ref> |
- <p> |
- The element that is being overridden. |
- </p> |
- </field> |
- <field name="className"> |
- <ref>String</ref> |
- <p> |
- The name of the class in which the member is defined. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="Position"> |
+ </field> |
+ <field name="stackTrace" optional="true"> |
+ <ref>String</ref> |
<p> |
- A position within a file. |
+ The stack trace associated with processing the request, |
+ used for debugging the server. |
</p> |
- <object> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the position. |
- </p> |
- </field> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the position. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="PubStatus"> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="RequestErrorCode"> |
+ <p> |
+ An enumeration of the types of errors that can occur in the |
+ execution of the server. |
+ </p> |
+ <enum> |
+ <value> |
+ <code>CONTENT_MODIFIED</code> |
<p> |
- An indication of the current state of pub execution. |
+ An "analysis.getErrors" or "analysis.getNavigation" request could |
+ not be satisfied because the content of the file changed before |
+ the requested results could be computed. |
</p> |
- <object> |
- <field name="isListingPackageDirs"> |
- <ref>bool</ref> |
- <p> |
- True if the server is currently running pub to produce a list of |
- package directories. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="RefactoringKind"> |
+ </value> |
+ <value> |
+ <code>DEBUG_PORT_COULD_NOT_BE_OPENED</code> |
<p> |
- An enumeration of the kinds of refactorings that can be |
- created. |
+ The server was unable to open a port for the diagnostic server. |
</p> |
- <enum> |
- <value><code>CONVERT_GETTER_TO_METHOD</code></value> |
- <value><code>CONVERT_METHOD_TO_GETTER</code></value> |
- <value><code>EXTRACT_LOCAL_VARIABLE</code></value> |
- <value><code>EXTRACT_METHOD</code></value> |
- <value><code>INLINE_LOCAL_VARIABLE</code></value> |
- <value><code>INLINE_METHOD</code></value> |
- <value><code>MOVE_FILE</code></value> |
- <value><code>RENAME</code></value> |
- <value><code>SORT_MEMBERS</code></value> |
- </enum> |
- </type> |
- <type name="RefactoringMethodParameter"> |
- <p> |
- A description of a parameter in a method refactoring. |
- </p> |
- <object> |
- <field name="id" optional="true"> |
- <ref>String</ref> |
- <p> |
- The unique identifier of the parameter. |
- Clients may omit this field for the parameters they want to add. |
- </p> |
- </field> |
- <field name="kind"> |
- <ref>RefactoringMethodParameterKind</ref> |
- <p> |
- The kind of the parameter. |
- </p> |
- </field> |
- <field name="type"> |
- <ref>String</ref> |
- <p> |
- The type that should be given to the parameter, or the return type |
- of the parameter's function type. |
- </p> |
- </field> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name that should be given to the parameter. |
- </p> |
- </field> |
- <field name="parameters" optional="true"> |
- <ref>String</ref> |
- <p> |
- The parameter list of the parameter's function type. |
- If the parameter is not of a function type, this field will |
- not be defined. If the function type has zero parameters, this |
- field will have a value of "()". |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="RefactoringFeedback"> |
+ </value> |
+ <value> |
+ <code>FILE_NOT_ANALYZED</code> |
<p> |
- An abstract superclass of all refactoring feedbacks. |
+ A request specified a FilePath which does not match a file in |
+ an analysis root, or the requested operation is not available |
+ for the file. |
</p> |
- <object> |
- </object> |
- </type> |
- <type name="RefactoringOptions"> |
+ </value> |
+ <value> |
+ <code>FORMAT_INVALID_FILE</code> |
<p> |
- An abstract superclass of all refactoring options. |
+ An "edit.format" request specified a FilePath |
+ which does not match a Dart file in an analysis root. |
</p> |
- <object> |
- </object> |
- </type> |
- <type name="RefactoringMethodParameterKind"> |
+ </value> |
+ <value> |
+ <code>FORMAT_WITH_ERRORS</code> |
<p> |
- An enumeration of the kinds of parameters. |
+ An "edit.format" request specified a file that contains syntax |
+ errors. |
</p> |
- <enum> |
- <value><code>REQUIRED</code></value> |
- <value><code>POSITIONAL</code></value> |
- <value><code>NAMED</code></value> |
- </enum> |
- </type> |
- <type name="RefactoringProblem"> |
+ </value> |
+ <value> |
+ <code>GET_ERRORS_INVALID_FILE</code> |
<p> |
- A description of a problem related to a refactoring. |
+ An "analysis.getErrors" request specified a FilePath |
+ which does not match a file currently subject to |
+ analysis. |
</p> |
- <object> |
- <field name="severity"> |
- <ref>RefactoringProblemSeverity</ref> |
- <p> |
- The severity of the problem being represented. |
- </p> |
- </field> |
- <field name="message"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the problem being |
- represented. |
- </p> |
- </field> |
- <field name="location" optional="true"> |
- <ref>Location</ref> |
- <p> |
- The location of the problem being represented. |
- This field is omitted unless there is a specific location |
- associated with the problem (such as a location where an element |
- being renamed will be shadowed). |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="RefactoringProblemSeverity"> |
+ </value> |
+ <value> |
+ <code>GET_NAVIGATION_INVALID_FILE</code> |
<p> |
- An enumeration of the severities of problems that can be |
- returned by the refactoring requests. |
+ An "analysis.getNavigation" request specified a FilePath |
+ which does not match a file currently subject to |
+ analysis. |
</p> |
- <enum> |
- <value> |
- <code>INFO</code> |
- <p>A minor code problem. No example, because it is not used yet. |
- </p> |
- </value> |
- <value> |
- <code>WARNING</code> |
- <p>A minor code problem. For example names of local variables |
- should be camel case and start with a lower case letter. Staring |
- the name of a variable with an upper case is OK from the language |
- point of view, but it is nice to warn the user. |
- </p> |
- </value> |
- <value> |
- <code>ERROR</code> |
- <p>The refactoring technically can be performed, but there is a |
- logical problem. For example the name of a local variable being |
- extracted conflicts with another name in the scope, or |
- duplicate parameter names in the method being extracted, or |
- a conflict between a parameter name and a local variable, etc. |
- In some cases the location of the problem is also provided, so |
- the IDE can show user the location and the problem, and let the |
- user decide whether she wants to perform the refactoring. For |
- example the name conflict might be expected, and the user wants |
- to fix it afterwards. |
- </p> |
- </value> |
- <value> |
- <code>FATAL</code> |
- <p>A fatal error, which prevents performing the refactoring. |
- For example the name of a local variable being extracted is not a |
- valid identifier, or selection is not a valid expression. |
- </p> |
- </value> |
- </enum> |
- </type> |
- <type name="RemoveContentOverlay"> |
+ </value> |
+ <value> |
+ <code>GET_REACHABLE_SOURCES_INVALID_FILE</code> |
<p> |
- A directive to remove an existing file content overlay. |
- After processing this directive, the file contents will once |
- again be read from the file system. |
+ An "analysis.getReachableSources" request specified a FilePath |
+ which does not match a file currently subject to |
+ analysis. |
</p> |
+ </value> |
+ <value> |
+ <code>INVALID_ANALYSIS_ROOT</code> |
<p> |
- If this directive is used on a file that doesn't currently |
- have a content overlay, it has no effect. |
+ A path passed as an argument to a request (such as |
+ analysis.reanalyze) is required to be an analysis root, but isn't. |
</p> |
- <object> |
- <field name="type" value="remove"><ref>String</ref></field> |
- </object> |
- </type> |
- <type name="RequestError"> |
+ </value> |
+ <value> |
+ <code>INVALID_EXECUTION_CONTEXT</code> |
<p> |
- An indication of a problem with the execution of the server, |
- typically in response to a request. |
+ The context root used to create an execution context does not |
+ exist. |
</p> |
- <object> |
- <field name="code"> |
- <ref>RequestErrorCode</ref> |
- <p> |
- A code that uniquely identifies the error that occurred. |
- </p> |
- </field> |
- <field name="message"> |
- <ref>String</ref> |
- <p> |
- A short description of the error. |
- </p> |
- </field> |
- <field name="stackTrace" optional="true"> |
- <ref>String</ref> |
- <p> |
- The stack trace associated with processing the request, |
- used for debugging the server. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="RequestErrorCode"> |
+ </value> |
+ <value> |
+ <code>INVALID_FILE_PATH_FORMAT</code> |
<p> |
- An enumeration of the types of errors that can occur in the |
- execution of the server. |
+ The format of the given file path is invalid, e.g. is not |
+ absolute and normalized. |
</p> |
- <enum> |
- <value> |
- <code>CONTENT_MODIFIED</code> |
- <p> |
- An "analysis.getErrors" or "analysis.getNavigation" request could |
- not be satisfied because the content of the file changed before |
- the requested results could be computed. |
- </p> |
- </value> |
- <value> |
- <code>DEBUG_PORT_COULD_NOT_BE_OPENED</code> |
- <p> |
- The server was unable to open a port for the diagnostic server. |
- </p> |
- </value> |
- <value> |
- <code>FILE_NOT_ANALYZED</code> |
- <p> |
- A request specified a FilePath which does not match a file in |
- an analysis root, or the requested operation is not available |
- for the file. |
- </p> |
- </value> |
- <value> |
- <code>FORMAT_INVALID_FILE</code> |
- <p> |
- An "edit.format" request specified a FilePath |
- which does not match a Dart file in an analysis root. |
- </p> |
- </value> |
- <value> |
- <code>FORMAT_WITH_ERRORS</code> |
- <p> |
- An "edit.format" request specified a file that contains syntax |
- errors. |
- </p> |
- </value> |
- <value> |
- <code>GET_ERRORS_INVALID_FILE</code> |
- <p> |
- An "analysis.getErrors" request specified a FilePath |
- which does not match a file currently subject to |
- analysis. |
- </p> |
- </value> |
- <value> |
- <code>GET_NAVIGATION_INVALID_FILE</code> |
- <p> |
- An "analysis.getNavigation" request specified a FilePath |
- which does not match a file currently subject to |
- analysis. |
- </p> |
- </value> |
- <value> |
- <code>GET_REACHABLE_SOURCES_INVALID_FILE</code> |
- <p> |
- An "analysis.getReachableSources" request specified a FilePath |
- which does not match a file currently subject to |
- analysis. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_ANALYSIS_ROOT</code> |
- <p> |
- A path passed as an argument to a request (such as |
- analysis.reanalyze) is required to be an analysis root, but isn't. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_EXECUTION_CONTEXT</code> |
- <p> |
- The context root used to create an execution context does not |
- exist. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_FILE_PATH_FORMAT</code> |
- <p> |
- The format of the given file path is invalid, e.g. is not |
- absolute and normalized. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_OVERLAY_CHANGE</code> |
- <p> |
- An "analysis.updateContent" request contained a |
- ChangeContentOverlay object which can't be applied, due |
- to an edit having an offset or length that is out of |
- range. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_PARAMETER</code> |
- <p> |
- One of the method parameters was invalid. |
- </p> |
- </value> |
- <value> |
- <code>INVALID_REQUEST</code> |
- <p> |
- A malformed request was received. |
- </p> |
- </value> |
- <value> |
- <code>ORGANIZE_DIRECTIVES_ERROR</code> |
- <p> |
- An "edit.organizeDirectives" request specified a Dart file that |
- cannot be analyzed. The reason is described in the message. |
- </p> |
- </value> |
- <value> |
- <code>REFACTORING_REQUEST_CANCELLED</code> |
- <p> |
- Another refactoring request was received during processing of |
- this one. |
- </p> |
- </value> |
- <value> |
- <code>SERVER_ALREADY_STARTED</code> |
- <p> |
- The analysis server has already been started (and hence |
- won't accept new connections). |
- </p> |
- <p> |
- This error is included for future expansion; at present |
- the analysis server can only speak to one client at a |
- time so this error will never occur. |
- </p> |
- </value> |
- <value> |
- <code>SERVER_ERROR</code> |
- <p> |
- An internal error occurred in the analysis server. |
- Also see the server.error notification. |
- </p> |
- </value> |
- <value> |
- <code>SORT_MEMBERS_INVALID_FILE</code> |
- <p> |
- An "edit.sortMembers" request specified a FilePath |
- which does not match a Dart file in an analysis root. |
- </p> |
- </value> |
- <value> |
- <code>SORT_MEMBERS_PARSE_ERRORS</code> |
- <p> |
- An "edit.sortMembers" request specified a Dart file that has |
- scan or parse errors. |
- </p> |
- </value> |
- <value> |
- <code>UNANALYZED_PRIORITY_FILES</code> |
- <p> |
- An "analysis.setPriorityFiles" request includes one or |
- more files that are not being analyzed. |
- </p> |
- <p> |
- This is a legacy error; it will be removed before the |
- API reaches version 1.0. |
- </p> |
- <!-- TODO(paulberry): remove this error and the code that |
- generates it. --> |
- </value> |
- <value> |
- <code>UNKNOWN_REQUEST</code> |
- <p> |
- A request was received which the analysis server does |
- not recognize, or cannot handle in its current |
- configuration. |
- </p> |
- </value> |
- <value> |
- <code>UNKNOWN_SOURCE</code> |
- <p> |
- The analysis server was requested to perform an action |
- on a source that does not exist. |
- </p> |
- </value> |
- <value> |
- <code>UNSUPPORTED_FEATURE</code> |
- <p> |
- The analysis server was requested to perform an action |
- which is not supported. |
- </p> |
- <p> |
- This is a legacy error; it will be removed before the |
- API reaches version 1.0. |
- </p> |
- <!-- TODO(paulberry): remove this error and the code that |
+ </value> |
+ <value> |
+ <code>INVALID_OVERLAY_CHANGE</code> |
+ <p> |
+ An "analysis.updateContent" request contained a |
+ ChangeContentOverlay object which can't be applied, due |
+ to an edit having an offset or length that is out of |
+ range. |
+ </p> |
+ </value> |
+ <value> |
+ <code>INVALID_PARAMETER</code> |
+ <p> |
+ One of the method parameters was invalid. |
+ </p> |
+ </value> |
+ <value> |
+ <code>INVALID_REQUEST</code> |
+ <p> |
+ A malformed request was received. |
+ </p> |
+ </value> |
+ <value> |
+ <code>ORGANIZE_DIRECTIVES_ERROR</code> |
+ <p> |
+ An "edit.organizeDirectives" request specified a Dart file that |
+ cannot be analyzed. The reason is described in the message. |
+ </p> |
+ </value> |
+ <value> |
+ <code>REFACTORING_REQUEST_CANCELLED</code> |
+ <p> |
+ Another refactoring request was received during processing of |
+ this one. |
+ </p> |
+ </value> |
+ <value> |
+ <code>SERVER_ALREADY_STARTED</code> |
+ <p> |
+ The analysis server has already been started (and hence |
+ won't accept new connections). |
+ </p> |
+ <p> |
+ This error is included for future expansion; at present |
+ the analysis server can only speak to one client at a |
+ time so this error will never occur. |
+ </p> |
+ </value> |
+ <value> |
+ <code>SERVER_ERROR</code> |
+ <p> |
+ An internal error occurred in the analysis server. |
+ Also see the server.error notification. |
+ </p> |
+ </value> |
+ <value> |
+ <code>SORT_MEMBERS_INVALID_FILE</code> |
+ <p> |
+ An "edit.sortMembers" request specified a FilePath |
+ which does not match a Dart file in an analysis root. |
+ </p> |
+ </value> |
+ <value> |
+ <code>SORT_MEMBERS_PARSE_ERRORS</code> |
+ <p> |
+ An "edit.sortMembers" request specified a Dart file that has |
+ scan or parse errors. |
+ </p> |
+ </value> |
+ <value> |
+ <code>UNANALYZED_PRIORITY_FILES</code> |
+ <p> |
+ An "analysis.setPriorityFiles" request includes one or |
+ more files that are not being analyzed. |
+ </p> |
+ <p> |
+ This is a legacy error; it will be removed before the |
+ API reaches version 1.0. |
+ </p> |
+ <!-- TODO(paulberry): remove this error and the code that |
generates it. --> |
- </value> |
- </enum> |
- </type> |
- <type name="SearchId"> |
- <ref>String</ref> |
+ </value> |
+ <value> |
+ <code>UNKNOWN_REQUEST</code> |
<p> |
- An identifier used to associate search results with a search |
- request. |
+ A request was received which the analysis server does |
+ not recognize, or cannot handle in its current |
+ configuration. |
</p> |
- </type> |
- <type name="SearchResult"> |
+ </value> |
+ <value> |
+ <code>UNKNOWN_SOURCE</code> |
<p> |
- A single result from a search request. |
+ The analysis server was requested to perform an action |
+ on a source that does not exist. |
</p> |
- <object> |
- <field name="location"> |
- <ref>Location</ref> |
- <p> |
- The location of the code that matched the search criteria. |
- </p> |
- </field> |
- <field name="kind"> |
- <ref>SearchResultKind</ref> |
- <p> |
- The kind of element that was found or the kind of |
- reference that was found. |
- </p> |
- </field> |
- <field name="isPotential"> |
- <ref>bool</ref> |
- <p> |
- True if the result is a potential match but cannot be |
- confirmed to be a match. For example, if all references to |
- a method m defined in some class were requested, and a |
- reference to a method m from an unknown class were found, |
- it would be marked as being a potential match. |
- </p> |
- </field> |
- <field name="path"> |
- <list><ref>Element</ref></list> |
- <p> |
- The elements that contain the result, starting with the |
- most immediately enclosing ancestor and ending with the |
- library. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="SearchResultKind"> |
+ </value> |
+ <value> |
+ <code>UNSUPPORTED_FEATURE</code> |
<p> |
- An enumeration of the kinds of search results returned by the |
- search domain. |
+ The analysis server was requested to perform an action |
+ which is not supported. |
</p> |
- <enum> |
- <value> |
- <code>DECLARATION</code> |
- <p> |
- The declaration of an element. |
- </p> |
- </value> |
- <value> |
- <code>INVOCATION</code> |
- <p> |
- The invocation of a function or method. |
- </p> |
- </value> |
- <value> |
- <code>READ</code> |
- <p> |
- A reference to a field, parameter or variable where it is being read. |
- </p> |
- </value> |
- <value> |
- <code>READ_WRITE</code> |
- <p> |
- A reference to a field, parameter or variable where it is being read and written. |
- </p> |
- </value> |
- <value> |
- <code>REFERENCE</code> |
- <p> |
- A reference to an element. |
- </p> |
- </value> |
- <value> |
- <code>UNKNOWN</code> |
- <p> |
- Some other kind of search result. |
- </p> |
- </value> |
- <value> |
- <code>WRITE</code> |
- <p> |
- A reference to a field, parameter or variable where it is being written. |
- </p> |
- </value> |
- </enum> |
- </type> |
- <type name="ServerService"> |
<p> |
- An enumeration of the services provided by the server domain. |
+ This is a legacy error; it will be removed before the |
+ API reaches version 1.0. |
</p> |
- <enum> |
- <value><code>STATUS</code></value> |
- </enum> |
- </type> |
- <type name="SourceChange"> |
+ <!-- TODO(paulberry): remove this error and the code that |
+ generates it. --> |
+ </value> |
+ </enum> |
+ </type> |
+ <type name="SearchId"> |
+ <ref>String</ref> |
+ <p> |
+ An identifier used to associate search results with a search |
+ request. |
+ </p> |
+ </type> |
+ <type name="SearchResult"> |
+ <p> |
+ A single result from a search request. |
+ </p> |
+ <object> |
+ <field name="location"> |
+ <ref>Location</ref> |
+ <p> |
+ The location of the code that matched the search criteria. |
+ </p> |
+ </field> |
+ <field name="kind"> |
+ <ref>SearchResultKind</ref> |
+ <p> |
+ The kind of element that was found or the kind of |
+ reference that was found. |
+ </p> |
+ </field> |
+ <field name="isPotential"> |
+ <ref>bool</ref> |
+ <p> |
+ True if the result is a potential match but cannot be |
+ confirmed to be a match. For example, if all references to |
+ a method m defined in some class were requested, and a |
+ reference to a method m from an unknown class were found, |
+ it would be marked as being a potential match. |
+ </p> |
+ </field> |
+ <field name="path"> |
+ <list> |
+ <ref>Element</ref> |
+ </list> |
+ <p> |
+ The elements that contain the result, starting with the |
+ most immediately enclosing ancestor and ending with the |
+ library. |
+ </p> |
+ </field> |
+ </object> |
+ </type> |
+ <type name="SearchResultKind"> |
+ <p> |
+ An enumeration of the kinds of search results returned by the |
+ search domain. |
+ </p> |
+ <enum> |
+ <value> |
+ <code>DECLARATION</code> |
<p> |
- A description of a set of edits that implement a single |
- conceptual change. |
+ The declaration of an element. |
</p> |
- <object> |
- <field name="message"> |
- <ref>String</ref> |
- <p> |
- A human-readable description of the change to be applied. |
- </p> |
- </field> |
- <field name="edits"> |
- <list><ref>SourceFileEdit</ref></list> |
- <p> |
- A list of the edits used to effect the change, grouped by |
- file. |
- </p> |
- </field> |
- <field name="linkedEditGroups"> |
- <list><ref>LinkedEditGroup</ref></list> |
- <p> |
- A list of the linked editing groups used to customize |
- the changes that were made. |
- </p> |
- </field> |
- <field name="selection" optional="true"> |
- <ref>Position</ref> |
- <p> |
- The position that should be selected after the edits |
- have been applied. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="SourceEdit"> |
+ </value> |
+ <value> |
+ <code>INVOCATION</code> |
<p> |
- A description of a single change to a single file. |
+ The invocation of a function or method. |
</p> |
- <object> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset of the region to be modified. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the region to be modified. |
- </p> |
- </field> |
- <field name="replacement"> |
- <ref>String</ref> |
- <p> |
- The code that is to replace the specified region in the |
- original code. |
- </p> |
- </field> |
- <field name="id" optional="true"> |
- <ref>String</ref> |
- <p> |
- An identifier that uniquely identifies this source edit from other |
- edits in the same response. This field is omitted unless a |
- containing structure needs to be able to identify the edit for |
- some reason. |
- </p> |
- <p> |
- For example, some refactoring operations can produce edits that |
- might not be appropriate (referred to as potential edits). Such |
- edits will have an id so that they can be referenced. Edits in |
- the same response that do not need to be referenced will not have |
- an id. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="SourceFileEdit"> |
+ </value> |
+ <value> |
+ <code>READ</code> |
<p> |
- A description of a set of changes to a single file. |
+ A reference to a field, parameter or variable where it is being read. |
</p> |
- <object> |
- <field name="file"> |
- <ref>FilePath</ref> |
- <p> |
- The file containing the code to be modified. |
- </p> |
- </field> |
- <field name="fileStamp"> |
- <ref>long</ref> |
- <p> |
- The modification stamp of the file at the moment when the change |
- was created, in milliseconds since the "Unix epoch". Will be -1 if |
- the file did not exist and should be created. The client may use |
- this field to make sure that the file was not changed since then, |
- so it is safe to apply the change. |
- </p> |
- </field> |
- <field name="edits"> |
- <list><ref>SourceEdit</ref></list> |
- <p> |
- A list of the edits used to effect the change. |
- </p> |
- </field> |
- </object> |
- </type> |
- <type name="TypeHierarchyItem"> |
+ </value> |
+ <value> |
+ <code>READ_WRITE</code> |
<p> |
- A representation of a class in a type hierarchy. |
+ A reference to a field, parameter or variable where it is being read |
+ and written. |
</p> |
- <object> |
- <field name="classElement"> |
- <ref>Element</ref> |
- <p> |
- The class element represented by this item. |
- </p> |
- </field> |
- <field name="displayName" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name to be displayed for the class. This field will be |
- omitted if the display name is the same as the name of the |
- element. The display name is different if there is |
- additional type information to be displayed, such as type |
- arguments. |
- </p> |
- </field> |
- <field name="memberElement" optional="true"> |
- <ref>Element</ref> |
- <p> |
- The member in the class corresponding to the member on |
- which the hierarchy was requested. This field will be |
- omitted if the hierarchy was not requested for a member or |
- if the class does not have a corresponding member. |
- </p> |
- </field> |
- <field name="superclass" optional="true"> |
- <ref>int</ref> |
- <p> |
- The index of the item representing the superclass of |
- this class. This field will be omitted if this item |
- represents the class Object. |
- </p> |
- </field> |
- <field name="interfaces"> |
- <list><ref>int</ref></list> |
- <p> |
- The indexes of the items representing the interfaces |
- implemented by this class. The list will be empty if |
- there are no implemented interfaces. |
- </p> |
- </field> |
- <field name="mixins"> |
- <list><ref>int</ref></list> |
- <p> |
- The indexes of the items representing the mixins |
- referenced by this class. The list will be empty if |
- there are no classes mixed in to this class. |
- </p> |
- </field> |
- <field name="subclasses"> |
- <list><ref>int</ref></list> |
- <p> |
- The indexes of the items representing the subtypes of |
- this class. The list will be empty if there are no |
- subtypes or if this item represents a supertype of the |
- pivot type. |
- </p> |
- </field> |
- </object> |
- </type> |
- </types> |
- <refactorings> |
- <h2><a name="refactorings">Refactorings</a></h2> |
- <p> |
- This section contains additional information for each kind of |
- refactoring. In addition to a brief description of the |
- refactoring, there is a specification of the feedback that is |
- provided when a refactoring is requested using the |
- edit.getRefactoring request (designed to improve the UX) |
- and the options that may be provided to edit.getRefactoring. |
- </p> |
- <refactoring kind="CONVERT_GETTER_TO_METHOD"> |
+ </value> |
+ <value> |
+ <code>REFERENCE</code> |
<p> |
- Convert a getter into a method by removing the keyword get |
- and adding an empty parameter list. |
+ A reference to an element. |
</p> |
+ </value> |
+ <value> |
+ <code>UNKNOWN</code> |
<p> |
- It is an error if the range contains anything other than all |
- or part of the name of a single getter. |
+ Some other kind of search result. |
</p> |
- </refactoring> |
- <refactoring kind="CONVERT_METHOD_TO_GETTER"> |
+ </value> |
+ <value> |
+ <code>WRITE</code> |
<p> |
- Convert a method into a getter by adding the keyword get and |
- removing the parameter list. |
+ A reference to a field, parameter or variable where it is being |
+ written. |
</p> |
+ </value> |
+ </enum> |
+ </type> |
+ <type name="ServerService"> |
+ <p> |
+ An enumeration of the services provided by the server domain. |
+ </p> |
+ <enum> |
+ <value><code>STATUS</code></value> |
+ </enum> |
+ </type> |
+ <type name="TypeHierarchyItem"> |
+ <p> |
+ A representation of a class in a type hierarchy. |
+ </p> |
+ <object> |
+ <field name="classElement"> |
+ <ref>Element</ref> |
<p> |
- It is an error if the range contains anything other than all |
- or part of the name of a single method or if the method has |
- a non-empty parameter list. |
+ The class element represented by this item. |
</p> |
- </refactoring> |
- <refactoring kind="EXTRACT_LOCAL_VARIABLE"> |
+ </field> |
+ <field name="displayName" optional="true"> |
+ <ref>String</ref> |
+ <p> |
+ The name to be displayed for the class. This field will be |
+ omitted if the display name is the same as the name of the |
+ element. The display name is different if there is |
+ additional type information to be displayed, such as type |
+ arguments. |
+ </p> |
+ </field> |
+ <field name="memberElement" optional="true"> |
+ <ref>Element</ref> |
+ <p> |
+ The member in the class corresponding to the member on |
+ which the hierarchy was requested. This field will be |
+ omitted if the hierarchy was not requested for a member or |
+ if the class does not have a corresponding member. |
+ </p> |
+ </field> |
+ <field name="superclass" optional="true"> |
+ <ref>int</ref> |
+ <p> |
+ The index of the item representing the superclass of |
+ this class. This field will be omitted if this item |
+ represents the class Object. |
+ </p> |
+ </field> |
+ <field name="interfaces"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The indexes of the items representing the interfaces |
+ implemented by this class. The list will be empty if |
+ there are no implemented interfaces. |
+ </p> |
+ </field> |
+ <field name="mixins"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The indexes of the items representing the mixins |
+ referenced by this class. The list will be empty if |
+ there are no classes mixed in to this class. |
+ </p> |
+ </field> |
+ <field name="subclasses"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The indexes of the items representing the subtypes of |
+ this class. The list will be empty if there are no |
+ subtypes or if this item represents a supertype of the |
+ pivot type. |
+ </p> |
+ </field> |
+ </object> |
+ </type> |
+</types> |
+<refactorings> |
+ <h2><a name="refactorings">Refactorings</a></h2> |
+ <p> |
+ This section contains additional information for each kind of |
+ refactoring. In addition to a brief description of the |
+ refactoring, there is a specification of the feedback that is |
+ provided when a refactoring is requested using the |
+ edit.getRefactoring request (designed to improve the UX) |
+ and the options that may be provided to edit.getRefactoring. |
+ </p> |
+ <refactoring kind="CONVERT_GETTER_TO_METHOD"> |
+ <p> |
+ Convert a getter into a method by removing the keyword get |
+ and adding an empty parameter list. |
+ </p> |
+ <p> |
+ It is an error if the range contains anything other than all |
+ or part of the name of a single getter. |
+ </p> |
+ </refactoring> |
+ <refactoring kind="CONVERT_METHOD_TO_GETTER"> |
+ <p> |
+ Convert a method into a getter by adding the keyword get and |
+ removing the parameter list. |
+ </p> |
+ <p> |
+ It is an error if the range contains anything other than all |
+ or part of the name of a single method or if the method has |
+ a non-empty parameter list. |
+ </p> |
+ </refactoring> |
+ <refactoring kind="EXTRACT_LOCAL_VARIABLE"> |
+ <p> |
+ Create a local variable initialized by the expression that covers |
+ the specified selection. |
+ </p> |
+ <p> |
+ It is an error if the selection range is not covered by a |
+ complete expression. |
+ </p> |
+ <feedback> |
+ <field name="coveringExpressionOffsets" optional="true"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The offsets of the expressions that cover the specified |
+ selection, from the down most to the up most. |
+ </p> |
+ </field> |
+ <field name="coveringExpressionLengths" optional="true"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The lengths of the expressions that cover the specified |
+ selection, from the down most to the up most. |
+ </p> |
+ </field> |
+ <field name="names"> |
+ <list> |
+ <ref>String</ref> |
+ </list> |
+ <p> |
+ The proposed names for the local variable. |
+ </p> |
+ </field> |
+ <field name="offsets"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The offsets of the expressions that would be replaced by |
+ a reference to the variable. |
+ </p> |
+ </field> |
+ <field name="lengths"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The lengths of the expressions that would be replaced by |
+ a reference to the variable. The lengths correspond to |
+ the offsets. In other words, for a given expression, if |
+ the offset of that expression is <tt>offsets[i]</tt>, then |
+ the length of that expression is <tt>lengths[i]</tt>. |
+ </p> |
+ </field> |
+ </feedback> |
+ <options> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- Create a local variable initialized by the expression that covers |
- the specified selection. |
+ The name that the local variable should be given. |
</p> |
+ </field> |
+ <field name="extractAll"> |
+ <ref>bool</ref> |
<p> |
- It is an error if the selection range is not covered by a |
- complete expression. |
+ True if all occurrences of the expression within the |
+ scope in which the variable will be defined should be |
+ replaced by a reference to the local variable. The |
+ expression used to initiate the refactoring will always |
+ be replaced. |
</p> |
- <feedback> |
- <field name="coveringExpressionOffsets" optional="true"> |
- <list><ref>int</ref></list> |
- <p> |
- The offsets of the expressions that cover the specified |
- selection, from the down most to the up most. |
- </p> |
- </field> |
- <field name="coveringExpressionLengths" optional="true"> |
- <list><ref>int</ref></list> |
- <p> |
- The lengths of the expressions that cover the specified |
- selection, from the down most to the up most. |
- </p> |
- </field> |
- <field name="names"> |
- <list><ref>String</ref></list> |
- <p> |
- The proposed names for the local variable. |
- </p> |
- </field> |
- <field name="offsets"> |
- <list><ref>int</ref></list> |
- <p> |
- The offsets of the expressions that would be replaced by |
- a reference to the variable. |
- </p> |
- </field> |
- <field name="lengths"> |
- <list><ref>int</ref></list> |
- <p> |
- The lengths of the expressions that would be replaced by |
- a reference to the variable. The lengths correspond to |
- the offsets. In other words, for a given expression, if |
- the offset of that expression is <tt>offsets[i]</tt>, then |
- the length of that expression is <tt>lengths[i]</tt>. |
- </p> |
- </field> |
- </feedback> |
- <options> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name that the local variable should be given. |
- </p> |
- </field> |
- <field name="extractAll"> |
- <ref>bool</ref> |
- <p> |
- True if all occurrences of the expression within the |
- scope in which the variable will be defined should be |
- replaced by a reference to the local variable. The |
- expression used to initiate the refactoring will always |
- be replaced. |
- </p> |
- </field> |
- </options> |
- </refactoring> |
- <refactoring kind="EXTRACT_METHOD"> |
+ </field> |
+ </options> |
+ </refactoring> |
+ <refactoring kind="EXTRACT_METHOD"> |
+ <p> |
+ Create a method whose body is the specified expression or |
+ list of statements, possibly augmented with a return |
+ statement. |
+ </p> |
+ <p> |
+ It is an error if the range contains anything other than a |
+ complete expression (no partial expressions are allowed) or |
+ a complete sequence of statements. |
+ </p> |
+ <feedback> |
+ <field name="offset"> |
+ <ref>int</ref> |
<p> |
- Create a method whose body is the specified expression or |
- list of statements, possibly augmented with a return |
- statement. |
+ The offset to the beginning of the expression or |
+ statements that will be extracted. |
</p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
<p> |
- It is an error if the range contains anything other than a |
- complete expression (no partial expressions are allowed) or |
- a complete sequence of statements. |
+ The length of the expression or statements that will be |
+ extracted. |
</p> |
- <feedback> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset to the beginning of the expression or |
- statements that will be extracted. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the expression or statements that will be |
- extracted. |
- </p> |
- </field> |
- <field name="returnType"> |
- <ref>String</ref> |
- <p> |
- The proposed return type for the method. |
- If the returned element does not have a declared return type, |
- this field will contain an empty string. |
- </p> |
- </field> |
- <field name="names"> |
- <list><ref>String</ref></list> |
- <p> |
- The proposed names for the method. |
- </p> |
- </field> |
- <field name="canCreateGetter"> |
- <ref>bool</ref> |
- <p> |
- True if a getter could be created rather than a method. |
- </p> |
- </field> |
- <field name="parameters"> |
- <list><ref>RefactoringMethodParameter</ref></list> |
- <p> |
- The proposed parameters for the method. |
- </p> |
- </field> |
- <field name="offsets"> |
- <list><ref>int</ref></list> |
- <p> |
- The offsets of the expressions or statements that would |
- be replaced by an invocation of the method. |
- </p> |
- </field> |
- <field name="lengths"> |
- <list><ref>int</ref></list> |
- <p> |
- The lengths of the expressions or statements that would |
- be replaced by an invocation of the method. The lengths |
- correspond to the offsets. In other words, for a given |
- expression (or block of statements), if the offset of |
- that expression is <tt>offsets[i]</tt>, then the length |
- of that expression is <tt>lengths[i]</tt>. |
- </p> |
- </field> |
- </feedback> |
- <options> |
- <field name="returnType"> |
- <ref>String</ref> |
- <p> |
- The return type that should be defined for the method. |
- </p> |
- </field> |
- <field name="createGetter"> |
- <ref>bool</ref> |
- <p> |
- True if a getter should be created rather than a |
- method. It is an error if this field is true and the |
- list of parameters is non-empty. |
- </p> |
- </field> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name that the method should be given. |
- </p> |
- </field> |
- <field name="parameters"> |
- <list><ref>RefactoringMethodParameter</ref></list> |
- <p> |
- The parameters that should be defined for the method. |
- </p> |
- <p> |
- It is an error if a REQUIRED or NAMED parameter follows a |
- POSITIONAL parameter. |
- It is an error if a REQUIRED or POSITIONAL parameter follows a |
- NAMED parameter. |
- </p> |
- <ul> |
- <li> |
- To change the order and/or update proposed parameters, add |
- parameters with the same identifiers as proposed. |
- </li> |
- <li>To add new parameters, omit their identifier.</li> |
- <li>To remove some parameters, omit them in this list.</li> |
- </ul> |
- </field> |
- <field name="extractAll"> |
- <ref>bool</ref> |
- <p> |
- True if all occurrences of the expression or statements |
- should be replaced by an invocation of the method. The |
- expression or statements used to initiate the |
- refactoring will always be replaced. |
- </p> |
- </field> |
- </options> |
- </refactoring> |
- <refactoring kind="INLINE_LOCAL_VARIABLE"> |
+ </field> |
+ <field name="returnType"> |
+ <ref>String</ref> |
<p> |
- Inline the initializer expression of a local variable in |
- place of any references to that variable. |
+ The proposed return type for the method. |
+ If the returned element does not have a declared return type, |
+ this field will contain an empty string. |
+ </p> |
+ </field> |
+ <field name="names"> |
+ <list> |
+ <ref>String</ref> |
+ </list> |
+ <p> |
+ The proposed names for the method. |
+ </p> |
+ </field> |
+ <field name="canCreateGetter"> |
+ <ref>bool</ref> |
+ <p> |
+ True if a getter could be created rather than a method. |
+ </p> |
+ </field> |
+ <field name="parameters"> |
+ <list> |
+ <ref>RefactoringMethodParameter</ref> |
+ </list> |
+ <p> |
+ The proposed parameters for the method. |
+ </p> |
+ </field> |
+ <field name="offsets"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The offsets of the expressions or statements that would |
+ be replaced by an invocation of the method. |
+ </p> |
+ </field> |
+ <field name="lengths"> |
+ <list> |
+ <ref>int</ref> |
+ </list> |
+ <p> |
+ The lengths of the expressions or statements that would |
+ be replaced by an invocation of the method. The lengths |
+ correspond to the offsets. In other words, for a given |
+ expression (or block of statements), if the offset of |
+ that expression is <tt>offsets[i]</tt>, then the length |
+ of that expression is <tt>lengths[i]</tt>. |
+ </p> |
+ </field> |
+ </feedback> |
+ <options> |
+ <field name="returnType"> |
+ <ref>String</ref> |
+ <p> |
+ The return type that should be defined for the method. |
</p> |
+ </field> |
+ <field name="createGetter"> |
+ <ref>bool</ref> |
<p> |
- It is an error if the range contains anything other than all |
- or part of the name of a single local variable. |
+ True if a getter should be created rather than a |
+ method. It is an error if this field is true and the |
+ list of parameters is non-empty. |
</p> |
- <feedback> |
- <field name="name"> |
- <ref>String</ref> |
- <p> |
- The name of the variable being inlined. |
- </p> |
- </field> |
- <field name="occurrences"> |
- <ref>int</ref> |
- <p> |
- The number of times the variable occurs. |
- </p> |
- </field> |
- </feedback> |
- </refactoring> |
- <refactoring kind="INLINE_METHOD"> |
+ </field> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- Inline a method in place of one or all references to that |
- method. |
+ The name that the method should be given. |
</p> |
+ </field> |
+ <field name="parameters"> |
+ <list> |
+ <ref>RefactoringMethodParameter</ref> |
+ </list> |
<p> |
- It is an error if the range contains anything other than all |
- or part of the name of a single method. |
+ The parameters that should be defined for the method. |
</p> |
- <feedback> |
- <field name="className" optional="true"> |
- <ref>String</ref> |
- <p> |
- The name of the class enclosing the method being inlined. |
- If not a class member is being inlined, this field will be absent. |
- </p> |
- </field> |
- <field name="methodName"> |
- <ref>String</ref> |
- <p> |
- The name of the method (or function) being inlined. |
- </p> |
- </field> |
- <field name="isDeclaration"> |
- <ref>bool</ref> |
- <p> |
- True if the declaration of the method is selected. |
- So all references should be inlined. |
- </p> |
- </field> |
- </feedback> |
- <options> |
- <field name="deleteSource"> |
- <ref>bool</ref> |
- <p> |
- True if the method being inlined should be removed. |
- It is an error if this field is true and inlineAll is false. |
- </p> |
- </field> |
- <field name="inlineAll"> |
- <ref>bool</ref> |
- <p> |
- True if all invocations of the method should be inlined, |
- or false if only the invocation site used to create this |
- refactoring should be inlined. |
- </p> |
- </field> |
- </options> |
- </refactoring> |
- <refactoring kind="MOVE_FILE"> |
<p> |
- Move the given file and update all of the references to that file |
- and from it. The move operation is supported in general case - for |
- renaming a file in the same folder, moving it to a different folder |
- or both. |
+ It is an error if a REQUIRED or NAMED parameter follows a |
+ POSITIONAL parameter. |
+ It is an error if a REQUIRED or POSITIONAL parameter follows a |
+ NAMED parameter. |
</p> |
+ <ul> |
+ <li> |
+ To change the order and/or update proposed parameters, add |
+ parameters with the same identifiers as proposed. |
+ </li> |
+ <li>To add new parameters, omit their identifier.</li> |
+ <li>To remove some parameters, omit them in this list.</li> |
+ </ul> |
+ </field> |
+ <field name="extractAll"> |
+ <ref>bool</ref> |
+ <p> |
+ True if all occurrences of the expression or statements |
+ should be replaced by an invocation of the method. The |
+ expression or statements used to initiate the |
+ refactoring will always be replaced. |
+ </p> |
+ </field> |
+ </options> |
+ </refactoring> |
+ <refactoring kind="INLINE_LOCAL_VARIABLE"> |
+ <p> |
+ Inline the initializer expression of a local variable in |
+ place of any references to that variable. |
+ </p> |
+ <p> |
+ It is an error if the range contains anything other than all |
+ or part of the name of a single local variable. |
+ </p> |
+ <feedback> |
+ <field name="name"> |
+ <ref>String</ref> |
<p> |
- The refactoring must be activated before an actual file moving |
- operation is performed. |
+ The name of the variable being inlined. |
</p> |
+ </field> |
+ <field name="occurrences"> |
+ <ref>int</ref> |
<p> |
- The "offset" and "length" fields from the request are ignored, but the |
- file specified in the request specifies the file to be moved. |
+ The number of times the variable occurs. |
</p> |
- <options> |
- <field name="newFile"> |
- <ref>FilePath</ref> |
- <p> |
- The new file path to which the given file is being moved. |
- </p> |
- </field> |
- </options> |
- </refactoring> |
- <refactoring kind="RENAME"> |
+ </field> |
+ </feedback> |
+ </refactoring> |
+ <refactoring kind="INLINE_METHOD"> |
+ <p> |
+ Inline a method in place of one or all references to that |
+ method. |
+ </p> |
+ <p> |
+ It is an error if the range contains anything other than all |
+ or part of the name of a single method. |
+ </p> |
+ <feedback> |
+ <field name="className" optional="true"> |
+ <ref>String</ref> |
<p> |
- Rename a given element and all of the references to that |
- element. |
+ The name of the class enclosing the method being inlined. |
+ If not a class member is being inlined, this field will be absent. |
</p> |
+ </field> |
+ <field name="methodName"> |
+ <ref>String</ref> |
<p> |
- It is an error if the range contains anything other than all |
- or part of the name of a single function (including methods, |
- getters and setters), variable (including fields, parameters |
- and local variables), class or function type. |
+ The name of the method (or function) being inlined. |
</p> |
- <feedback> |
- <field name="offset"> |
- <ref>int</ref> |
- <p> |
- The offset to the beginning of the name selected to be |
- renamed. |
- </p> |
- </field> |
- <field name="length"> |
- <ref>int</ref> |
- <p> |
- The length of the name selected to be renamed. |
- </p> |
- </field> |
- <field name="elementKindName"> |
- <ref>String</ref> |
- <p> |
- The human-readable description of the kind of element being |
- renamed (such as "class" or "function type |
- alias"). |
- </p> |
- </field> |
- <field name="oldName"> |
- <ref>String</ref> |
- <p> |
- The old name of the element before the refactoring. |
- </p> |
- </field> |
- </feedback> |
- <options> |
- <field name="newName"> |
- <ref>String</ref> |
- <p> |
- The name that the element should have after the |
- refactoring. |
- </p> |
- </field> |
- </options> |
- </refactoring> |
- </refactorings> |
- <h2>Errors</h2> |
+ </field> |
+ <field name="isDeclaration"> |
+ <ref>bool</ref> |
+ <p> |
+ True if the declaration of the method is selected. |
+ So all references should be inlined. |
+ </p> |
+ </field> |
+ </feedback> |
+ <options> |
+ <field name="deleteSource"> |
+ <ref>bool</ref> |
+ <p> |
+ True if the method being inlined should be removed. |
+ It is an error if this field is true and inlineAll is false. |
+ </p> |
+ </field> |
+ <field name="inlineAll"> |
+ <ref>bool</ref> |
+ <p> |
+ True if all invocations of the method should be inlined, |
+ or false if only the invocation site used to create this |
+ refactoring should be inlined. |
+ </p> |
+ </field> |
+ </options> |
+ </refactoring> |
+ <refactoring kind="MOVE_FILE"> |
+ <p> |
+ Move the given file and update all of the references to that file |
+ and from it. The move operation is supported in general case - for |
+ renaming a file in the same folder, moving it to a different folder |
+ or both. |
+ </p> |
+ <p> |
+ The refactoring must be activated before an actual file moving |
+ operation is performed. |
+ </p> |
<p> |
- This section contains a list of all of the errors that are |
- produced by the server and the data that is returned with each. |
+ The "offset" and "length" fields from the request are ignored, but the |
+ file specified in the request specifies the file to be moved. |
+ </p> |
+ <options> |
+ <field name="newFile"> |
+ <ref>FilePath</ref> |
+ <p> |
+ The new file path to which the given file is being moved. |
+ </p> |
+ </field> |
+ </options> |
+ </refactoring> |
+ <refactoring kind="RENAME"> |
+ <p> |
+ Rename a given element and all of the references to that |
+ element. |
</p> |
<p> |
- TODO: TBD |
+ It is an error if the range contains anything other than all |
+ or part of the name of a single function (including methods, |
+ getters and setters), variable (including fields, parameters |
+ and local variables), class or function type. |
</p> |
- <h2 class="domain"><a name="index">Index</a></h2> |
- <index></index> |
- </body> |
+ <feedback> |
+ <field name="offset"> |
+ <ref>int</ref> |
+ <p> |
+ The offset to the beginning of the name selected to be |
+ renamed. |
+ </p> |
+ </field> |
+ <field name="length"> |
+ <ref>int</ref> |
+ <p> |
+ The length of the name selected to be renamed. |
+ </p> |
+ </field> |
+ <field name="elementKindName"> |
+ <ref>String</ref> |
+ <p> |
+ The human-readable description of the kind of element being |
+ renamed (such as "class" or "function type |
+ alias"). |
+ </p> |
+ </field> |
+ <field name="oldName"> |
+ <ref>String</ref> |
+ <p> |
+ The old name of the element before the refactoring. |
+ </p> |
+ </field> |
+ </feedback> |
+ <options> |
+ <field name="newName"> |
+ <ref>String</ref> |
+ <p> |
+ The name that the element should have after the |
+ refactoring. |
+ </p> |
+ </field> |
+ </options> |
+ </refactoring> |
+</refactorings> |
+<h2>Errors</h2> |
+<p> |
+ This section contains a list of all of the errors that are |
+ produced by the server and the data that is returned with each. |
+</p> |
+<p> |
+ TODO: TBD |
+</p> |
+<h2 class="domain"><a name="index">Index</a></h2> |
+<index></index> |
+</body> |
</html> |