jvikstrom abandoned this revision.
jvikstrom added a comment.

In D64922#1603759 <https://reviews.llvm.org/D64922#1603759>, @nridge wrote:
> I believe this is not necessary. You can add text document capabilities in 
> the vscode client extension like this:
>
>   class SemanticHighlightingFeature implements vscodelc.StaticFeature {
>     fillClientCapabilities(capabilities: vscodelc.ClientCapabilities): void {
>       const textDocumentCapabilities:
>           vscodelc.TextDocumentClientCapabilities & { 
> semanticHighlightingCapabilities?: { semanticHighlighting: boolean } }
>           = capabilities.textDocument;
>       textDocumentCapabilities.semanticHighlightingCapabilities = { 
> semanticHighlighting: true };
>     }
>   }
>  
>   ...
>  
>   clangdClient.registerFeature(new SemanticHighlightingFeature());
>
>
> What this is doing is creating a new type on the fly which extends 
> `vscodelc.TextDocumentCapabilities` with a new optional field 
> `semanticHighlightingCapabilities`, and then casts 
> `capabilities.textDocument` to that type.


That definitely works, I had no idea that was a feature you could use in 
typescript. Thanks

Abandoning in favor of using type intersection in typescript instead.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D64922/new/

https://reviews.llvm.org/D64922



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
  • [PATCH] D64922: [clangd] A... Nathan Ridge via Phabricator via cfe-commits
    • [PATCH] D64922: [clan... Johan Vikström via Phabricator via cfe-commits

Reply via email to