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 |