protected override Task ProduceTagsAsync( TaggerContext <BraceHighlightTag> context, DocumentSnapshotSpan documentSnapshotSpan, int?caretPosition, CancellationToken cancellationToken) { var document = documentSnapshotSpan.Document; if (!caretPosition.HasValue || document == null) { return(Task.CompletedTask); } var options = GlobalOptions.GetBraceMatchingOptions(document.Project.Language); return(ProduceTagsAsync( context, document, documentSnapshotSpan.SnapshotSpan.Snapshot, caretPosition.Value, options, cancellationToken)); }