Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 <!doctype html> | 1 <!doctype html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <meta charset="UTF-8"/> | 4 <meta charset="UTF-8"/> |
| 5 <title>Analysis Server API Specification</title> | 5 <title>Analysis Server API Specification</title> |
| 6 </head> | 6 </head> |
| 7 <body> | 7 <body> |
| 8 <h1>Analysis Server API Specification</h1> | 8 <h1>Analysis Server API Specification</h1> |
| 9 <h1 style="color:#999999">Version <version>1.18.1</version></h1> | 9 <h1 style="color:#999999">Version <version>1.18.1</version></h1> |
| 10 <p> | 10 <p> |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 109 field is the ‘params’ field, whose structure is dependent on the | 109 field is the ‘params’ field, whose structure is dependent on the |
| 110 kind of notification being sent. The structure of this field is | 110 kind of notification being sent. The structure of this field is |
| 111 described with each notification. | 111 described with each notification. |
| 112 </p> | 112 </p> |
| 113 <p> | 113 <p> |
| 114 In order to be backward compatible, clients should ignore fields that were | 114 In order to be backward compatible, clients should ignore fields that were |
| 115 not specified in the version of the API on which they were based. Clients | 115 not specified in the version of the API on which they were based. Clients |
| 116 should also use the server.getVersion request to test that the version of | 116 should also use the server.getVersion request to test that the version of |
| 117 the server supports an API before using it. | 117 the server supports an API before using it. |
| 118 </p> | 118 </p> |
| 119 <h3>Eventual Consistency</h3> | |
| 120 <p> | |
| 121 TODO: TBD | |
| 122 </p> | |
|
Brian Wilkerson
2017/04/09 16:30:53
This really *does* need to be documented, so I'd p
devoncarew
2017/04/09 19:43:21
Probably better to track in an issue than in our p
Brian Wilkerson
2017/04/10 13:45:17
Probably not, because of the huge number of issues
| |
| 123 <h3>Domains</h3> | 119 <h3>Domains</h3> |
| 124 <p> | 120 <p> |
| 125 For convenience, the API is divided into domains. Each domain is | 121 For convenience, the API is divided into domains. Each domain is specified |
| 126 specified in a separate section below: | 122 in a separate section below. The specifications of the API’s refer to data |
| 123 structures beyond the standard JSON primitives. These data structures are | |
| 124 documented in the section titled <a href="#types">Types</a>. | |
| 127 </p> | 125 </p> |
| 128 <toc></toc> | 126 <toc></toc> |
| 129 <p> | |
| 130 The specifications of the API’s refer to data structures beyond | |
| 131 the standard JSON primitives. These data structures are | |
| 132 documented in the section titled <a href="#types">Types</a>. | |
| 133 </p> | |
| 134 <p> | |
| 135 To get an overview of the API, you can consult the <a href="#index">index< /a>. | |
| 136 </p> | |
| 137 <h3>Command-line Arguments</h3> | 127 <h3>Command-line Arguments</h3> |
| 138 <p> | 128 <p> |
| 139 The command-line arguments that can be passed to the server. | 129 The command-line arguments that can be passed to the server. |
| 140 </p> | 130 </p> |
| 141 <h4>Options</h4> | 131 <h4>Options</h4> |
| 142 <blockquote> | 132 <blockquote> |
| 143 <dl> | 133 <dl> |
| 144 <dt>--client-id</dt> | 134 <dt>--client-id</dt> |
| 145 <dd> | 135 <dd> |
| 146 <p> | 136 <p> |
| (...skipping 15 matching lines...) Expand all Loading... | |
| 162 the server. Used when generating error reports. | 152 the server. Used when generating error reports. |
| 163 </p> | 153 </p> |
| 164 <p> | 154 <p> |
| 165 Clients are strongly encouraged to provide this information in | 155 Clients are strongly encouraged to provide this information in |
| 166 order to improve the quality of information that can be provided | 156 order to improve the quality of information that can be provided |
| 167 to them. | 157 to them. |
| 168 </p> | 158 </p> |
| 169 </dd> | 159 </dd> |
| 170 </dl> | 160 </dl> |
| 171 <dl> | 161 <dl> |
| 172 <dt>--no-error-notification</dt> | 162 <dt class="deprecated">--no-error-notification</dt> |
| 173 <dd> | 163 <dd> |
| 174 <p><b>Deprecated</b></p> | 164 <p><b>@deprecated:</b> clients should no longer pass this option in</p> |
| 175 Disable notifications about errors (see analysis.error). If this | 165 Disable notifications about errors (see analysis.error). If this |
| 176 flag is not specified then notifications will be sent for all | 166 flag is not specified then notifications will be sent for all |
| 177 errors produced for all files in the actual analysis roots. | 167 errors produced for all files in the actual analysis roots. |
| 178 </dd> | 168 </dd> |
| 179 </dl> | 169 </dl> |
| 180 <dl> | 170 <dl> |
| 181 <dt>--no-index</dt> | 171 <dt>--no-index</dt> |
| 182 <dd> | 172 <dd> |
| 183 Disable the server from generating an index. If this flag is passed and an | 173 Disable the server from generating an index. If this flag is passed and an |
| 184 API is used that requires an index, then an error, <tt>NO_INDEX_GENERATED< /tt>, | 174 API is used that requires an index, then an error, <tt>NO_INDEX_GENERATED< /tt>, |
| 185 will be thrown. The set of API calls that require an index include: | 175 will be thrown. The set of API calls that require an index include: |
| 186 refactoring calls, code completions and searching. | 176 refactoring calls, code completions and searching. |
| 187 <!-- TODO(jwren/scheglov): make sure that this list of APIs that is comple te. --> | 177 <!-- TODO(jwren/scheglov): make sure that this list of APIs that is comple te. --> |
| 188 </dd> | 178 </dd> |
| 189 </dl> | 179 </dl> |
| 190 <dl> | 180 <dl> |
| 191 <dt>--file-read-mode</dt> | 181 <dt class="deprecated">--file-read-mode</dt> |
| 192 <dd> | 182 <dd> |
| 193 <p><b>Deprecated</b></p> | 183 <p><b>@deprecated:</b> clients should no longer pass this option in</p> |
| 194 An enumeration of the ways files can be read from disk. Some clients | 184 An enumeration of the ways files can be read from disk. Some clients |
| 195 normalize end of line characters which would make the file offset and | 185 normalize end of line characters which would make the file offset and |
| 196 range information incorrect. The default option is <tt>as-is</tt>, but | 186 range information incorrect. The default option is <tt>as-is</tt>, but |
| 197 can also be set to <tt>normalize-eol-always</tt>. The default option | 187 can also be set to <tt>normalize-eol-always</tt>. The default option |
| 198 (<tt>as-is</tt>) reads files as they are on disk. The | 188 (<tt>as-is</tt>) reads files as they are on disk. The |
| 199 <tt>normalize-eol-always</tt> option does the following: | 189 <tt>normalize-eol-always</tt> option does the following: |
| 200 <ul> | 190 <ul> |
| 201 <li>'\r\n' is converted to '\n';</li> | 191 <li>'\r\n' is converted to '\n';</li> |
| 202 <li>'\r' by itself is converted to '\n';</li> | 192 <li>'\r' by itself is converted to '\n';</li> |
| 203 <li>this happens regardless of the OS editor is running on.</li> | 193 <li>this happens regardless of the OS editor is running on.</li> |
| 204 </ul> | 194 </ul> |
| 205 </dd> | 195 </dd> |
| 206 </dl> | 196 </dl> |
| 207 </blockquote> | 197 </blockquote> |
| 198 <domains></domains> | |
| 208 <domain name="server"> | 199 <domain name="server"> |
| 209 <p> | 200 <p> |
| 210 The server domain contains API’s related to the execution of | 201 The server domain contains API’s related to the execution of |
| 211 the server. | 202 the server. |
| 212 </p> | 203 </p> |
| 213 <request method="getVersion"> | 204 <request method="getVersion"> |
| 214 <p>Return the version number of the analysis server.</p> | 205 <p>Return the version number of the analysis server.</p> |
| 215 <result> | 206 <result> |
| 216 <field name="version"> | 207 <field name="version"> |
| 217 <ref>String</ref> | 208 <ref>String</ref> |
| (...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 804 </map> | 795 </map> |
| 805 <p> | 796 <p> |
| 806 A table mapping the files whose content has changed to a | 797 A table mapping the files whose content has changed to a |
| 807 description of the content change. | 798 description of the content change. |
| 808 </p> | 799 </p> |
| 809 </field> | 800 </field> |
| 810 </params> | 801 </params> |
| 811 <result> | 802 <result> |
| 812 </result> | 803 </result> |
| 813 </request> | 804 </request> |
| 814 <request method="updateOptions"> | 805 <request method="updateOptions" deprecated="true"> |
| 815 <p><b><i>Deprecated</i></b>: all of the options can be set by users in | 806 <p><b><i>@deprecated:</i></b> all of the options can be set by users in |
| 816 an analysis options file.</p> | 807 an analysis options file.</p> |
| 817 <p> | 808 <p> |
| 818 Update the options controlling analysis based on the given | 809 Update the options controlling analysis based on the given |
| 819 set of options. Any options that are not included in the | 810 set of options. Any options that are not included in the |
| 820 analysis options will not be changed. If there are options | 811 analysis options will not be changed. If there are options |
| 821 in the analysis options that are not valid, they will be | 812 in the analysis options that are not valid, they will be |
| 822 silently ignored. | 813 silently ignored. |
| 823 </p> | 814 </p> |
| 824 <params> | 815 <params> |
| 825 <field name="options"> | 816 <field name="options"> |
| (...skipping 1189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2015 </field> | 2006 </field> |
| 2016 <field name="uri" optional="true"> | 2007 <field name="uri" optional="true"> |
| 2017 <ref>String</ref> | 2008 <ref>String</ref> |
| 2018 <p> | 2009 <p> |
| 2019 The URI to which the file path was mapped. This field is omitted | 2010 The URI to which the file path was mapped. This field is omitted |
| 2020 if the file field was not given in the request. | 2011 if the file field was not given in the request. |
| 2021 </p> | 2012 </p> |
| 2022 </field> | 2013 </field> |
| 2023 </result> | 2014 </result> |
| 2024 </request> | 2015 </request> |
| 2025 <request method="setSubscriptions"> | 2016 <request method="setSubscriptions" deprecated="true"> |
| 2026 <p> | 2017 <p> |
| 2027 <b><i>Deprecated</i></b>: the analysis server no longer fires | 2018 <b>@deprecated:</b> the analysis server no longer fires |
| 2028 <tt>LAUNCH_DATA</tt> events. | 2019 <tt>LAUNCH_DATA</tt> events. |
| 2029 </p> | 2020 </p> |
| 2030 <p> | 2021 <p> |
| 2031 Subscribe for services. All previous subscriptions are replaced by the | 2022 Subscribe for services. All previous subscriptions are replaced by the |
| 2032 given set of services. | 2023 given set of services. |
| 2033 </p> | 2024 </p> |
| 2034 <p> | 2025 <p> |
| 2035 It is an error if any of the elements in the list are not valid | 2026 It is an error if any of the elements in the list are not valid |
| 2036 services. If there is an error, then the current subscriptions will | 2027 services. If there is an error, then the current subscriptions will |
| 2037 remain unchanged. | 2028 remain unchanged. |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2235 <value><code>CHECKED_MODE_COMPILE_TIME_ERROR</code></value> | 2226 <value><code>CHECKED_MODE_COMPILE_TIME_ERROR</code></value> |
| 2236 <value><code>COMPILE_TIME_ERROR</code></value> | 2227 <value><code>COMPILE_TIME_ERROR</code></value> |
| 2237 <value><code>HINT</code></value> | 2228 <value><code>HINT</code></value> |
| 2238 <value><code>LINT</code></value> | 2229 <value><code>LINT</code></value> |
| 2239 <value><code>STATIC_TYPE_WARNING</code></value> | 2230 <value><code>STATIC_TYPE_WARNING</code></value> |
| 2240 <value><code>STATIC_WARNING</code></value> | 2231 <value><code>STATIC_WARNING</code></value> |
| 2241 <value><code>SYNTACTIC_ERROR</code></value> | 2232 <value><code>SYNTACTIC_ERROR</code></value> |
| 2242 <value><code>TODO</code></value> | 2233 <value><code>TODO</code></value> |
| 2243 </enum> | 2234 </enum> |
| 2244 </type> | 2235 </type> |
| 2245 <type name="AnalysisOptions"> | 2236 <type name="AnalysisOptions" deprecated="true"> |
| 2246 <p><b><i>Deprecated</i></b>: the only reference to this type has been | 2237 <p><b>@deprecated:</b> the only reference to this type has been |
| 2247 deprecated.</p> | 2238 deprecated.</p> |
| 2248 <p> | 2239 <p> |
| 2249 A set of options controlling what kind of analysis is to be | 2240 A set of options controlling what kind of analysis is to be |
| 2250 performed. If the value of a field is omitted the value of the | 2241 performed. If the value of a field is omitted the value of the |
| 2251 option will not be changed. | 2242 option will not be changed. |
| 2252 </p> | 2243 </p> |
| 2253 <object> | 2244 <object> |
| 2254 <field name="enableAsync" optional="true"> | 2245 <field name="enableAsync" optional="true" deprecated="true"> |
| 2255 <ref>bool</ref> | 2246 <ref>bool</ref> |
| 2256 <p><b><i>Deprecated</i></b>: this feature is always enabled.</p> | 2247 <p><b>@deprecated:</b> this feature is always enabled.</p> |
| 2257 <p> | 2248 <p> |
| 2258 True if the client wants to enable support for the | 2249 True if the client wants to enable support for the |
| 2259 proposed async feature. | 2250 proposed async feature. |
| 2260 </p> | 2251 </p> |
| 2261 </field> | 2252 </field> |
| 2262 <field name="enableDeferredLoading" optional="true"> | 2253 <field name="enableDeferredLoading" optional="true" deprecated="true"> |
| 2263 <ref>bool</ref> | 2254 <ref>bool</ref> |
| 2264 <p><b><i>Deprecated</i></b>: this feature is always enabled.</p> | 2255 <p><b>@deprecated:</b> this feature is always enabled.</p> |
| 2265 <p> | 2256 <p> |
| 2266 True if the client wants to enable support for the | 2257 True if the client wants to enable support for the |
| 2267 proposed deferred loading feature. | 2258 proposed deferred loading feature. |
| 2268 </p> | 2259 </p> |
| 2269 </field> | 2260 </field> |
| 2270 <field name="enableEnums" optional="true"> | 2261 <field name="enableEnums" optional="true" deprecated="true"> |
| 2271 <ref>bool</ref> | 2262 <ref>bool</ref> |
| 2272 <p><b><i>Deprecated</i></b>: this feature is always enabled.</p> | 2263 <p><b>@deprecated:</b> this feature is always enabled.</p> |
| 2273 <p> | 2264 <p> |
| 2274 True if the client wants to enable support for the | 2265 True if the client wants to enable support for the |
| 2275 proposed enum feature. | 2266 proposed enum feature. |
| 2276 </p> | 2267 </p> |
| 2277 </field> | 2268 </field> |
| 2278 <field name="enableNullAwareOperators" optional="true"> | 2269 <field name="enableNullAwareOperators" optional="true" deprecated="tru e"> |
| 2279 <ref>bool</ref> | 2270 <ref>bool</ref> |
| 2280 <p><b><i>Deprecated</i></b>: this feature is always enabled.</p> | 2271 <p><b>@deprecated:</b> this feature is always enabled.</p> |
| 2281 <p> | 2272 <p> |
| 2282 True if the client wants to enable support for the | 2273 True if the client wants to enable support for the |
| 2283 proposed "null aware operators" feature. | 2274 proposed "null aware operators" feature. |
| 2284 </p> | 2275 </p> |
| 2285 </field> | 2276 </field> |
| 2286 <field name="enableSuperMixins" optional="true"> | 2277 <field name="enableSuperMixins" optional="true"> |
| 2287 <ref>bool</ref> | 2278 <ref>bool</ref> |
| 2288 <p> | 2279 <p> |
| 2289 True if the client wants to enable support for the | 2280 True if the client wants to enable support for the |
| 2290 proposed "less restricted mixins" proposal (DEP 34). | 2281 proposed "less restricted mixins" proposal (DEP 34). |
| (...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2738 <value><code>GETTER</code></value> | 2729 <value><code>GETTER</code></value> |
| 2739 <value><code>LABEL</code></value> | 2730 <value><code>LABEL</code></value> |
| 2740 <value><code>LIBRARY</code></value> | 2731 <value><code>LIBRARY</code></value> |
| 2741 <value><code>LOCAL_VARIABLE</code></value> | 2732 <value><code>LOCAL_VARIABLE</code></value> |
| 2742 <value><code>METHOD</code></value> | 2733 <value><code>METHOD</code></value> |
| 2743 <value><code>PARAMETER</code></value> | 2734 <value><code>PARAMETER</code></value> |
| 2744 <value><code>PREFIX</code></value> | 2735 <value><code>PREFIX</code></value> |
| 2745 <value><code>SETTER</code></value> | 2736 <value><code>SETTER</code></value> |
| 2746 <value><code>TOP_LEVEL_VARIABLE</code></value> | 2737 <value><code>TOP_LEVEL_VARIABLE</code></value> |
| 2747 <value><code>TYPE_PARAMETER</code></value> | 2738 <value><code>TYPE_PARAMETER</code></value> |
| 2748 <value> | 2739 <value deprecated="true"> |
| 2749 <code>UNIT_TEST_GROUP</code> | 2740 <code>UNIT_TEST_GROUP</code> |
| 2750 <p><b><i>Deprecated</i></b>: support for tests was removed.</p> | 2741 <p><b>@deprecated:</b> support for tests was removed.</p> |
| 2751 </value> | 2742 </value> |
| 2752 <value> | 2743 <value deprecated="true"> |
| 2753 <code>UNIT_TEST_TEST</code> | 2744 <code>UNIT_TEST_TEST</code> |
| 2754 <p><b><i>Deprecated</i></b>: support for tests was removed.</p> | 2745 <p><b>@deprecated:</b> support for tests was removed.</p> |
| 2755 </value> | 2746 </value> |
| 2756 <value><code>UNKNOWN</code></value> | 2747 <value><code>UNKNOWN</code></value> |
| 2757 </enum> | 2748 </enum> |
| 2758 </type> | 2749 </type> |
| 2759 <type name="ExecutableFile"> | 2750 <type name="ExecutableFile"> |
| 2760 <p> | 2751 <p> |
| 2761 A description of an executable file. | 2752 A description of an executable file. |
| 2762 </p> | 2753 </p> |
| 2763 <object> | 2754 <object> |
| 2764 <field name="file"> | 2755 <field name="file"> |
| (...skipping 1882 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4647 This section contains a list of all of the errors that are | 4638 This section contains a list of all of the errors that are |
| 4648 produced by the server and the data that is returned with each. | 4639 produced by the server and the data that is returned with each. |
| 4649 </p> | 4640 </p> |
| 4650 <p> | 4641 <p> |
| 4651 TODO: TBD | 4642 TODO: TBD |
| 4652 </p> | 4643 </p> |
| 4653 <h2 class="domain"><a name="index">Index</a></h2> | 4644 <h2 class="domain"><a name="index">Index</a></h2> |
| 4654 <index></index> | 4645 <index></index> |
| 4655 </body> | 4646 </body> |
| 4656 </html> | 4647 </html> |
| OLD | NEW |