77import { TPromise } from 'vs/base/common/winjs.base' ;
88import { IDisposable } from 'vs/base/common/lifecycle' ;
99import { Emitter } from 'vs/base/common/event' ;
10- import * as vscode from 'vscode' ;
1110import { ITextModel , ISingleEditOperation } from 'vs/editor/common/model' ;
1211import * as modes from 'vs/editor/common/modes' ;
1312import { WorkspaceSymbolProviderRegistry , IWorkspaceSymbolProvider } from 'vs/workbench/parts/search/common/search' ;
1413import { wireCancellationToken } from 'vs/base/common/async' ;
1514import { CancellationToken } from 'vs/base/common/cancellation' ;
1615import { Position as EditorPosition } from 'vs/editor/common/core/position' ;
1716import { Range as EditorRange } from 'vs/editor/common/core/range' ;
18- import { ExtHostContext , MainThreadLanguageFeaturesShape , ExtHostLanguageFeaturesShape , MainContext , IExtHostContext , ISerializedLanguageConfiguration , ISerializedRegExp , ISerializedIndentationRule , ISerializedOnEnterRule , LocationDto , SymbolInformationDto , CodeActionDto , reviveWorkspaceEditDto } from '../node/extHost.protocol' ;
17+ import { ExtHostContext , MainThreadLanguageFeaturesShape , ExtHostLanguageFeaturesShape , MainContext , IExtHostContext , ISerializedLanguageConfiguration , ISerializedRegExp , ISerializedIndentationRule , ISerializedOnEnterRule , LocationDto , SymbolInformationDto , CodeActionDto , reviveWorkspaceEditDto , ISerializedDocumentFilter } from '../node/extHost.protocol' ;
1918import { LanguageConfigurationRegistry } from 'vs/editor/common/modes/languageConfigurationRegistry' ;
2019import { LanguageConfiguration , IndentationRule , OnEnterRule } from 'vs/editor/common/modes/languageConfiguration' ;
2120import { IHeapService } from './mainThreadHeapService' ;
@@ -97,7 +96,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
9796
9897 // --- outline
9998
100- $registerOutlineSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
99+ $registerOutlineSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
101100 this . _registrations [ handle ] = modes . DocumentSymbolProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DocumentSymbolProvider > {
102101 provideDocumentSymbols : ( model : ITextModel , token : CancellationToken ) : Thenable < modes . SymbolInformation [ ] > => {
103102 return wireCancellationToken ( token , this . _proxy . $provideDocumentSymbols ( handle , model . uri ) ) . then ( MainThreadLanguageFeatures . _reviveSymbolInformationDto ) ;
@@ -107,7 +106,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
107106
108107 // --- code lens
109108
110- $registerCodeLensSupport ( handle : number , selector : vscode . DocumentSelector , eventHandle : number ) : void {
109+ $registerCodeLensSupport ( handle : number , selector : ISerializedDocumentFilter [ ] , eventHandle : number ) : void {
111110
112111 const provider = < modes . CodeLensProvider > {
113112 provideCodeLenses : ( model : ITextModel , token : CancellationToken ) : modes . ICodeLensSymbol [ ] | Thenable < modes . ICodeLensSymbol [ ] > => {
@@ -136,23 +135,23 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
136135
137136 // --- declaration
138137
139- $registerDeclaractionSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
138+ $registerDeclaractionSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
140139 this . _registrations [ handle ] = modes . DefinitionProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DefinitionProvider > {
141140 provideDefinition : ( model , position , token ) : Thenable < modes . Definition > => {
142141 return wireCancellationToken ( token , this . _proxy . $provideDefinition ( handle , model . uri , position ) ) . then ( MainThreadLanguageFeatures . _reviveLocationDto ) ;
143142 }
144143 } ) ;
145144 }
146145
147- $registerImplementationSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
146+ $registerImplementationSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
148147 this . _registrations [ handle ] = modes . ImplementationProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . ImplementationProvider > {
149148 provideImplementation : ( model , position , token ) : Thenable < modes . Definition > => {
150149 return wireCancellationToken ( token , this . _proxy . $provideImplementation ( handle , model . uri , position ) ) . then ( MainThreadLanguageFeatures . _reviveLocationDto ) ;
151150 }
152151 } ) ;
153152 }
154153
155- $registerTypeDefinitionSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
154+ $registerTypeDefinitionSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
156155 this . _registrations [ handle ] = modes . TypeDefinitionProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . TypeDefinitionProvider > {
157156 provideTypeDefinition : ( model , position , token ) : Thenable < modes . Definition > => {
158157 return wireCancellationToken ( token , this . _proxy . $provideTypeDefinition ( handle , model . uri , position ) ) . then ( MainThreadLanguageFeatures . _reviveLocationDto ) ;
@@ -162,7 +161,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
162161
163162 // --- extra info
164163
165- $registerHoverProvider ( handle : number , selector : vscode . DocumentSelector ) : void {
164+ $registerHoverProvider ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
166165 this . _registrations [ handle ] = modes . HoverProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . HoverProvider > {
167166 provideHover : ( model : ITextModel , position : EditorPosition , token : CancellationToken ) : Thenable < modes . Hover > => {
168167 return wireCancellationToken ( token , this . _proxy . $provideHover ( handle , model . uri , position ) ) ;
@@ -172,7 +171,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
172171
173172 // --- occurrences
174173
175- $registerDocumentHighlightProvider ( handle : number , selector : vscode . DocumentSelector ) : void {
174+ $registerDocumentHighlightProvider ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
176175 this . _registrations [ handle ] = modes . DocumentHighlightProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DocumentHighlightProvider > {
177176 provideDocumentHighlights : ( model : ITextModel , position : EditorPosition , token : CancellationToken ) : Thenable < modes . DocumentHighlight [ ] > => {
178177 return wireCancellationToken ( token , this . _proxy . $provideDocumentHighlights ( handle , model . uri , position ) ) ;
@@ -182,7 +181,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
182181
183182 // --- references
184183
185- $registerReferenceSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
184+ $registerReferenceSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
186185 this . _registrations [ handle ] = modes . ReferenceProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . ReferenceProvider > {
187186 provideReferences : ( model : ITextModel , position : EditorPosition , context : modes . ReferenceContext , token : CancellationToken ) : Thenable < modes . Location [ ] > => {
188187 return wireCancellationToken ( token , this . _proxy . $provideReferences ( handle , model . uri , position , context ) ) . then ( MainThreadLanguageFeatures . _reviveLocationDto ) ;
@@ -192,7 +191,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
192191
193192 // --- quick fix
194193
195- $registerQuickFixSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
194+ $registerQuickFixSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
196195 this . _registrations [ handle ] = modes . CodeActionProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . CodeActionProvider > {
197196 provideCodeActions : ( model : ITextModel , range : EditorRange , context : modes . CodeActionContext , token : CancellationToken ) : Thenable < modes . CodeAction [ ] > => {
198197 return this . _heapService . trackRecursive ( wireCancellationToken ( token , this . _proxy . $provideCodeActions ( handle , model . uri , range , context ) ) ) . then ( MainThreadLanguageFeatures . _reviveCodeActionDto ) ;
@@ -202,23 +201,23 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
202201
203202 // --- formatting
204203
205- $registerDocumentFormattingSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
204+ $registerDocumentFormattingSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
206205 this . _registrations [ handle ] = modes . DocumentFormattingEditProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DocumentFormattingEditProvider > {
207206 provideDocumentFormattingEdits : ( model : ITextModel , options : modes . FormattingOptions , token : CancellationToken ) : Thenable < ISingleEditOperation [ ] > => {
208207 return wireCancellationToken ( token , this . _proxy . $provideDocumentFormattingEdits ( handle , model . uri , options ) ) ;
209208 }
210209 } ) ;
211210 }
212211
213- $registerRangeFormattingSupport ( handle : number , selector : vscode . DocumentSelector ) : void {
212+ $registerRangeFormattingSupport ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
214213 this . _registrations [ handle ] = modes . DocumentRangeFormattingEditProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DocumentRangeFormattingEditProvider > {
215214 provideDocumentRangeFormattingEdits : ( model : ITextModel , range : EditorRange , options : modes . FormattingOptions , token : CancellationToken ) : Thenable < ISingleEditOperation [ ] > => {
216215 return wireCancellationToken ( token , this . _proxy . $provideDocumentRangeFormattingEdits ( handle , model . uri , range , options ) ) ;
217216 }
218217 } ) ;
219218 }
220219
221- $registerOnTypeFormattingSupport ( handle : number , selector : vscode . DocumentSelector , autoFormatTriggerCharacters : string [ ] ) : void {
220+ $registerOnTypeFormattingSupport ( handle : number , selector : ISerializedDocumentFilter [ ] , autoFormatTriggerCharacters : string [ ] ) : void {
222221 this . _registrations [ handle ] = modes . OnTypeFormattingEditProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . OnTypeFormattingEditProvider > {
223222
224223 autoFormatTriggerCharacters,
@@ -251,7 +250,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
251250
252251 // --- rename
253252
254- $registerRenameSupport ( handle : number , selector : vscode . DocumentSelector , supportsResolveInitialValues : boolean ) : void {
253+ $registerRenameSupport ( handle : number , selector : ISerializedDocumentFilter [ ] , supportsResolveInitialValues : boolean ) : void {
255254 this . _registrations [ handle ] = modes . RenameProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . RenameProvider > {
256255 provideRenameEdits : ( model : ITextModel , position : EditorPosition , newName : string , token : CancellationToken ) : Thenable < modes . WorkspaceEdit > => {
257256 return wireCancellationToken ( token , this . _proxy . $provideRenameEdits ( handle , model . uri , position , newName ) ) . then ( reviveWorkspaceEditDto ) ;
@@ -264,7 +263,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
264263
265264 // --- suggest
266265
267- $registerSuggestSupport ( handle : number , selector : vscode . DocumentSelector , triggerCharacters : string [ ] , supportsResolveDetails : boolean ) : void {
266+ $registerSuggestSupport ( handle : number , selector : ISerializedDocumentFilter [ ] , triggerCharacters : string [ ] , supportsResolveDetails : boolean ) : void {
268267 this . _registrations [ handle ] = modes . SuggestRegistry . register ( toLanguageSelector ( selector ) , < modes . ISuggestSupport > {
269268 triggerCharacters,
270269 provideCompletionItems : ( model : ITextModel , position : EditorPosition , context : modes . SuggestContext , token : CancellationToken ) : Thenable < modes . ISuggestResult > => {
@@ -287,7 +286,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
287286
288287 // --- parameter hints
289288
290- $registerSignatureHelpProvider ( handle : number , selector : vscode . DocumentSelector , triggerCharacter : string [ ] ) : void {
289+ $registerSignatureHelpProvider ( handle : number , selector : ISerializedDocumentFilter [ ] , triggerCharacter : string [ ] ) : void {
291290 this . _registrations [ handle ] = modes . SignatureHelpProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . SignatureHelpProvider > {
292291
293292 signatureHelpTriggerCharacters : triggerCharacter ,
@@ -301,7 +300,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
301300
302301 // --- links
303302
304- $registerDocumentLinkProvider ( handle : number , selector : vscode . DocumentSelector ) : void {
303+ $registerDocumentLinkProvider ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
305304 this . _registrations [ handle ] = modes . LinkProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . LinkProvider > {
306305 provideLinks : ( model , token ) => {
307306 return this . _heapService . trackRecursive ( wireCancellationToken ( token , this . _proxy . $provideDocumentLinks ( handle , model . uri ) ) ) ;
@@ -314,7 +313,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
314313
315314 // --- colors
316315
317- $registerDocumentColorProvider ( handle : number , selector : vscode . DocumentSelector ) : void {
316+ $registerDocumentColorProvider ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
318317 const proxy = this . _proxy ;
319318 this . _registrations [ handle ] = modes . ColorProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . DocumentColorProvider > {
320319 provideDocumentColors : ( model , token ) => {
@@ -348,7 +347,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
348347
349348 // --- folding
350349
351- $registerFoldingProvider ( handle : number , selector : vscode . DocumentSelector ) : void {
350+ $registerFoldingProvider ( handle : number , selector : ISerializedDocumentFilter [ ] ) : void {
352351 const proxy = this . _proxy ;
353352 this . _registrations [ handle ] = modes . FoldingProviderRegistry . register ( toLanguageSelector ( selector ) , < modes . FoldingProvider > {
354353 provideFoldingRanges : ( model , context , token ) => {
0 commit comments