@@ -25,8 +25,8 @@ open Microsoft.VisualStudio.Text.Tagging
2525
2626open Microsoft.FSharp .Compiler .SourceCodeServices
2727
28- // TODO : add types colorization if available from intellisense
29- // TODO : add defines flags if available from project sites and files
28+ // FSROSLYNTODO : add types colorization if available from intellisense
29+ // FSROSLYNTODO : add defines flags if available from project sites and files
3030
3131type private SourceLineData ( lexStateAtEndOfLine : FSharpTokenizerLexState , hashCode : int , classifiedSpans : IReadOnlyList < ClassifiedSpan >) =
3232 member val LexStateAtEndOfLine = lexStateAtEndOfLine
@@ -97,15 +97,17 @@ type internal FSharpColorizationService() =
9797 member this.AddSyntacticClassificationsAsync ( document : Document , textSpan : TextSpan , result : List < ClassifiedSpan >, cancellationToken : CancellationToken ) =
9898 document.GetTextAsync( cancellationToken) .ContinueWith(
9999 fun ( sourceTextTask : Task < SourceText >) ->
100- result.AddRange( FSharpColorizationService.GetColorizationData( sourceTextTask.Result, textSpan, None, [], cancellationToken))
101- , TaskContinuationOptions.OnlyOnRanToCompletion)
100+ if sourceTextTask.Status = TaskStatus.RanToCompletion then
101+ result.AddRange( FSharpColorizationService.GetColorizationData( sourceTextTask.Result, textSpan, None, [], cancellationToken))
102+ , cancellationToken)
102103
103104 member this.AddSemanticClassificationsAsync ( document : Document , textSpan : TextSpan , result : List < ClassifiedSpan >, cancellationToken : CancellationToken ) =
104105 document.GetTextAsync( cancellationToken) .ContinueWith(
105106 fun ( sourceTextTask : Task < SourceText >) ->
106- //TODO: Replace with types data when available from intellisense (behaving as AddSyntacticClassificationsAsync() for now)
107- result.AddRange( FSharpColorizationService.GetColorizationData( sourceTextTask.Result, textSpan, None, [], cancellationToken))
108- , TaskContinuationOptions.OnlyOnRanToCompletion)
107+ if sourceTextTask.Status = TaskStatus.RanToCompletion then
108+ //FSROSLYNTODO: Replace with types data when available from intellisense (behaving as AddSyntacticClassificationsAsync() for now)
109+ result.AddRange( FSharpColorizationService.GetColorizationData( sourceTextTask.Result, textSpan, None, [], cancellationToken))
110+ , cancellationToken)
109111
110112 member this.AdjustStaleClassification ( text : SourceText , classifiedSpan : ClassifiedSpan ) : ClassifiedSpan =
111113 let tokens = FSharpColorizationService.GetColorizationData( text, classifiedSpan.TextSpan, None, [], CancellationToken.None)
0 commit comments