{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE OverloadedLabels #-}
{-# LANGUAGE OverloadedStrings #-}

module Language.LSP.Protocol.Capabilities (
  fullCaps,
  LSPVersion (..),
  capsForVersion,
  dynamicRegistrationSupported,
) where

import Control.Lens
import Data.Maybe
import Data.Row
import Data.Set qualified as Set
import Language.LSP.Protocol.Lens qualified as L
import Language.LSP.Protocol.Message
import Language.LSP.Protocol.Types
import Prelude hiding (min)

{-
TODO: this is out-of-date/needs an audit
TODO: can we generate this? process the 'since' annotations in the metamodel?
-}

-- | Capabilities for full conformance to the current LSP specification.
fullCaps :: ClientCapabilities
fullCaps :: ClientCapabilities
fullCaps = LSPVersion -> ClientCapabilities
capsForVersion (Int -> Int -> LSPVersion
LSPVersion Int
forall a. Bounded a => a
maxBound Int
forall a. Bounded a => a
maxBound)

-- | A specific version of the LSP specification.
data LSPVersion = LSPVersion Int Int

-- | Capabilities for full conformance to the LSP specification up until a version.
capsForVersion :: LSPVersion -> ClientCapabilities
capsForVersion :: LSPVersion -> ClientCapabilities
capsForVersion (LSPVersion Int
maj Int
min) = ClientCapabilities
caps
 where
  caps :: ClientCapabilities
caps =
    ClientCapabilities
      { $sel:_workspace:ClientCapabilities :: Maybe WorkspaceClientCapabilities
_workspace = WorkspaceClientCapabilities -> Maybe WorkspaceClientCapabilities
forall a. a -> Maybe a
Just WorkspaceClientCapabilities
w
      , $sel:_textDocument:ClientCapabilities :: Maybe TextDocumentClientCapabilities
_textDocument = TextDocumentClientCapabilities
-> Maybe TextDocumentClientCapabilities
forall a. a -> Maybe a
Just TextDocumentClientCapabilities
td
      , $sel:_window:ClientCapabilities :: Maybe WindowClientCapabilities
_window = WindowClientCapabilities -> Maybe WindowClientCapabilities
forall a. a -> Maybe a
Just WindowClientCapabilities
window
      , $sel:_general:ClientCapabilities :: Maybe GeneralClientCapabilities
_general = Int
-> Int
-> GeneralClientCapabilities
-> Maybe GeneralClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 GeneralClientCapabilities
general
      , $sel:_notebookDocument:ClientCapabilities :: Maybe NotebookDocumentClientCapabilities
_notebookDocument = Int
-> Int
-> NotebookDocumentClientCapabilities
-> Maybe NotebookDocumentClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (NotebookDocumentClientCapabilities
 -> Maybe NotebookDocumentClientCapabilities)
-> NotebookDocumentClientCapabilities
-> Maybe NotebookDocumentClientCapabilities
forall a b. (a -> b) -> a -> b
$ NotebookDocumentSyncClientCapabilities
-> NotebookDocumentClientCapabilities
NotebookDocumentClientCapabilities (NotebookDocumentSyncClientCapabilities
 -> NotebookDocumentClientCapabilities)
-> NotebookDocumentSyncClientCapabilities
-> NotebookDocumentClientCapabilities
forall a b. (a -> b) -> a -> b
$ Maybe Bool -> Maybe Bool -> NotebookDocumentSyncClientCapabilities
NotebookDocumentSyncClientCapabilities Maybe Bool
dynamicReg (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_experimental:ClientCapabilities :: Maybe Value
_experimental = Maybe Value
forall a. Maybe a
Nothing
      }
  w :: WorkspaceClientCapabilities
w =
    WorkspaceClientCapabilities
      { $sel:_applyEdit:WorkspaceClientCapabilities :: Maybe Bool
_applyEdit = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_workspaceEdit:WorkspaceClientCapabilities :: Maybe WorkspaceEditClientCapabilities
_workspaceEdit =
          WorkspaceEditClientCapabilities
-> Maybe WorkspaceEditClientCapabilities
forall a. a -> Maybe a
Just
            ( Maybe Bool
-> Maybe [ResourceOperationKind]
-> Maybe FailureHandlingKind
-> Maybe Bool
-> Maybe (Rec (("groupsOnLabel" .== Maybe Bool) .+ 'R '[]))
-> WorkspaceEditClientCapabilities
WorkspaceEditClientCapabilities
                (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
                (Int
-> Int -> [ResourceOperationKind] -> Maybe [ResourceOperationKind]
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
13 [ResourceOperationKind]
resourceOperations)
                Maybe FailureHandlingKind
forall a. Maybe a
Nothing
                (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True)
                (Int
-> Int
-> Rec ('R '["groupsOnLabel" ':-> Maybe Bool])
-> Maybe (Rec ('R '["groupsOnLabel" ':-> Maybe Bool]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "groupsOnLabel"
#groupsOnLabel Label "groupsOnLabel"
-> Maybe Bool -> Rec ("groupsOnLabel" .== Maybe Bool)
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True))
            )
      , $sel:_didChangeConfiguration:WorkspaceClientCapabilities :: Maybe DidChangeConfigurationClientCapabilities
_didChangeConfiguration = DidChangeConfigurationClientCapabilities
-> Maybe DidChangeConfigurationClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> DidChangeConfigurationClientCapabilities
DidChangeConfigurationClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_didChangeWatchedFiles:WorkspaceClientCapabilities :: Maybe DidChangeWatchedFilesClientCapabilities
_didChangeWatchedFiles = DidChangeWatchedFilesClientCapabilities
-> Maybe DidChangeWatchedFilesClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> Maybe Bool -> DidChangeWatchedFilesClientCapabilities
DidChangeWatchedFilesClientCapabilities Maybe Bool
dynamicReg (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True))
      , $sel:_symbol:WorkspaceClientCapabilities :: Maybe WorkspaceSymbolClientCapabilities
_symbol = WorkspaceSymbolClientCapabilities
-> Maybe WorkspaceSymbolClientCapabilities
forall a. a -> Maybe a
Just WorkspaceSymbolClientCapabilities
symbolCapabilities
      , $sel:_executeCommand:WorkspaceClientCapabilities :: Maybe ExecuteCommandClientCapabilities
_executeCommand = ExecuteCommandClientCapabilities
-> Maybe ExecuteCommandClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> ExecuteCommandClientCapabilities
ExecuteCommandClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_codeLens:WorkspaceClientCapabilities :: Maybe CodeLensWorkspaceClientCapabilities
_codeLens = CodeLensWorkspaceClientCapabilities
-> Maybe CodeLensWorkspaceClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> CodeLensWorkspaceClientCapabilities
CodeLensWorkspaceClientCapabilities (Maybe Bool -> CodeLensWorkspaceClientCapabilities)
-> Maybe Bool -> CodeLensWorkspaceClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_workspaceFolders:WorkspaceClientCapabilities :: Maybe Bool
_workspaceFolders = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
6 Bool
True
      , $sel:_configuration:WorkspaceClientCapabilities :: Maybe Bool
_configuration = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
6 Bool
True
      , $sel:_semanticTokens:WorkspaceClientCapabilities :: Maybe SemanticTokensWorkspaceClientCapabilities
_semanticTokens = Int
-> Int
-> SemanticTokensWorkspaceClientCapabilities
-> Maybe SemanticTokensWorkspaceClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Maybe Bool -> SemanticTokensWorkspaceClientCapabilities
SemanticTokensWorkspaceClientCapabilities (Maybe Bool -> SemanticTokensWorkspaceClientCapabilities)
-> Maybe Bool -> SemanticTokensWorkspaceClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_inlayHint:WorkspaceClientCapabilities :: Maybe InlayHintWorkspaceClientCapabilities
_inlayHint = Int
-> Int
-> InlayHintWorkspaceClientCapabilities
-> Maybe InlayHintWorkspaceClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> InlayHintWorkspaceClientCapabilities
InlayHintWorkspaceClientCapabilities (Maybe Bool -> InlayHintWorkspaceClientCapabilities)
-> Maybe Bool -> InlayHintWorkspaceClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_fileOperations:WorkspaceClientCapabilities :: Maybe FileOperationClientCapabilities
_fileOperations = Int
-> Int
-> FileOperationClientCapabilities
-> Maybe FileOperationClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 FileOperationClientCapabilities
fileOperations
      , $sel:_inlineValue:WorkspaceClientCapabilities :: Maybe InlineValueWorkspaceClientCapabilities
_inlineValue = Int
-> Int
-> InlineValueWorkspaceClientCapabilities
-> Maybe InlineValueWorkspaceClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> InlineValueWorkspaceClientCapabilities
InlineValueWorkspaceClientCapabilities (Maybe Bool -> InlineValueWorkspaceClientCapabilities)
-> Maybe Bool -> InlineValueWorkspaceClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_diagnostics:WorkspaceClientCapabilities :: Maybe DiagnosticWorkspaceClientCapabilities
_diagnostics = Int
-> Int
-> DiagnosticWorkspaceClientCapabilities
-> Maybe DiagnosticWorkspaceClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> DiagnosticWorkspaceClientCapabilities
DiagnosticWorkspaceClientCapabilities (Maybe Bool -> DiagnosticWorkspaceClientCapabilities)
-> Maybe Bool -> DiagnosticWorkspaceClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      }

  resourceOperations :: [ResourceOperationKind]
resourceOperations =
    [ ResourceOperationKind
ResourceOperationKind_Create
    , ResourceOperationKind
ResourceOperationKind_Delete
    , ResourceOperationKind
ResourceOperationKind_Rename
    ]

  fileOperations :: FileOperationClientCapabilities
fileOperations =
    Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> FileOperationClientCapabilities
FileOperationClientCapabilities
      Maybe Bool
dynamicReg
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)

  symbolCapabilities :: WorkspaceSymbolClientCapabilities
symbolCapabilities =
    Maybe Bool
-> Maybe (Rec (("valueSet" .== Maybe [SymbolKind]) .+ 'R '[]))
-> Maybe (Rec (("valueSet" .== [SymbolTag]) .+ 'R '[]))
-> Maybe (Rec (("properties" .== [Text]) .+ 'R '[]))
-> WorkspaceSymbolClientCapabilities
WorkspaceSymbolClientCapabilities
      Maybe Bool
dynamicReg
      (Int
-> Int
-> Rec ('R '["valueSet" ':-> Maybe [SymbolKind]])
-> Maybe (Rec ('R '["valueSet" ':-> Maybe [SymbolKind]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
4 (Label "valueSet"
#valueSet Label "valueSet"
-> Maybe [SymbolKind] -> Rec ("valueSet" .== Maybe [SymbolKind])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [SymbolKind] -> Maybe [SymbolKind]
forall a. a -> Maybe a
Just [SymbolKind]
sKs))
      (Int
-> Int
-> Rec ('R '["valueSet" ':-> [SymbolTag]])
-> Maybe (Rec ('R '["valueSet" ':-> [SymbolTag]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "valueSet"
#valueSet Label "valueSet" -> [SymbolTag] -> Rec ("valueSet" .== [SymbolTag])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [SymbolTag
SymbolTag_Deprecated]))
      (Int
-> Int
-> Rec ('R '["properties" ':-> [Text]])
-> Maybe (Rec ('R '["properties" ':-> [Text]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Label "properties"
#properties Label "properties" -> [Text] -> Rec ("properties" .== [Text])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== []))

  sKs :: [SymbolKind]
sKs
    | Int
maj Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
3 Bool -> Bool -> Bool
&& Int
min Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
4 = [SymbolKind]
oldSKs [SymbolKind] -> [SymbolKind] -> [SymbolKind]
forall a. [a] -> [a] -> [a]
++ [SymbolKind]
newSKs
    | Bool
otherwise = [SymbolKind]
oldSKs

  oldSKs :: [SymbolKind]
oldSKs =
    [ SymbolKind
SymbolKind_File
    , SymbolKind
SymbolKind_Module
    , SymbolKind
SymbolKind_Namespace
    , SymbolKind
SymbolKind_Package
    , SymbolKind
SymbolKind_Class
    , SymbolKind
SymbolKind_Method
    , SymbolKind
SymbolKind_Property
    , SymbolKind
SymbolKind_Field
    , SymbolKind
SymbolKind_Constructor
    , SymbolKind
SymbolKind_Enum
    , SymbolKind
SymbolKind_Interface
    , SymbolKind
SymbolKind_Function
    , SymbolKind
SymbolKind_Variable
    , SymbolKind
SymbolKind_Constant
    , SymbolKind
SymbolKind_String
    , SymbolKind
SymbolKind_Number
    , SymbolKind
SymbolKind_Boolean
    , SymbolKind
SymbolKind_Array
    ]

  newSKs :: [SymbolKind]
newSKs =
    [ SymbolKind
SymbolKind_Object
    , SymbolKind
SymbolKind_Key
    , SymbolKind
SymbolKind_Null
    , SymbolKind
SymbolKind_EnumMember
    , SymbolKind
SymbolKind_Struct
    , SymbolKind
SymbolKind_Event
    , SymbolKind
SymbolKind_Operator
    , SymbolKind
SymbolKind_TypeParameter
    ]

  -- Only one token format for now, just list it here
  tfs :: [TokenFormat]
tfs = [TokenFormat
TokenFormat_Relative]

  semanticTokensCapabilities :: SemanticTokensClientCapabilities
semanticTokensCapabilities =
    SemanticTokensClientCapabilities
      { $sel:_dynamicRegistration:SemanticTokensClientCapabilities :: Maybe Bool
_dynamicRegistration = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_requests:SemanticTokensClientCapabilities :: Rec
  (Extend "range" (Maybe (Bool |? Rec ('R '[]))) ('R '[])
   .+ (("full"
        .== Maybe (Bool |? Rec (("delta" .== Maybe Bool) .+ 'R '[])))
       .+ 'R '[]))
_requests = Label "range"
#range Label "range"
-> Maybe (Bool |? Rec ('R '[]))
-> Rec (Extend "range" (Maybe (Bool |? Rec ('R '[]))) ('R '[]))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== (Bool |? Rec ('R '[])) -> Maybe (Bool |? Rec ('R '[]))
forall a. a -> Maybe a
Just (Bool -> Bool |? Rec ('R '[])
forall a b. a -> a |? b
InL Bool
True) Rec ('R '["range" ':-> Maybe (Bool |? Rec ('R '[]))])
-> Rec
     ('R
        '["full" ':-> Maybe (Bool |? Rec ('R '["delta" ':-> Maybe Bool]))])
-> Rec
     ('R '["range" ':-> Maybe (Bool |? Rec ('R '[]))]
      .+ 'R
           '["full" ':-> Maybe (Bool |? Rec ('R '["delta" ':-> Maybe Bool]))])
forall (l :: Row (*)) (r :: Row (*)).
FreeForall l =>
Rec l -> Rec r -> Rec (l .+ r)
.+ Label "full"
#full Label "full"
-> Maybe (Bool |? Rec ('R '["delta" ':-> Maybe Bool]))
-> Rec
     ("full" .== Maybe (Bool |? Rec ('R '["delta" ':-> Maybe Bool])))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== (Bool |? Rec ('R '["delta" ':-> Maybe Bool]))
-> Maybe (Bool |? Rec ('R '["delta" ':-> Maybe Bool]))
forall a. a -> Maybe a
Just (Rec ('R '["delta" ':-> Maybe Bool])
-> Bool |? Rec ('R '["delta" ':-> Maybe Bool])
forall a b. b -> a |? b
InR (Label "delta"
#delta Label "delta" -> Maybe Bool -> Rec ("delta" .== Maybe Bool)
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True))
      , $sel:_tokenTypes:SemanticTokensClientCapabilities :: [Text]
_tokenTypes = SemanticTokenTypes -> Text
SemanticTokenTypes -> EnumBaseType SemanticTokenTypes
forall a. LspEnum a => a -> EnumBaseType a
toEnumBaseType (SemanticTokenTypes -> Text) -> [SemanticTokenTypes] -> [Text]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Set SemanticTokenTypes -> [SemanticTokenTypes]
forall a. Set a -> [a]
Set.toList (forall a. LspEnum a => Set a
knownValues @SemanticTokenTypes)
      , $sel:_tokenModifiers:SemanticTokensClientCapabilities :: [Text]
_tokenModifiers = SemanticTokenModifiers -> Text
SemanticTokenModifiers -> EnumBaseType SemanticTokenModifiers
forall a. LspEnum a => a -> EnumBaseType a
toEnumBaseType (SemanticTokenModifiers -> Text)
-> [SemanticTokenModifiers] -> [Text]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Set SemanticTokenModifiers -> [SemanticTokenModifiers]
forall a. Set a -> [a]
Set.toList (forall a. LspEnum a => Set a
knownValues @SemanticTokenModifiers)
      , $sel:_formats:SemanticTokensClientCapabilities :: [TokenFormat]
_formats = [TokenFormat]
tfs
      , $sel:_overlappingTokenSupport:SemanticTokensClientCapabilities :: Maybe Bool
_overlappingTokenSupport = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_multilineTokenSupport:SemanticTokensClientCapabilities :: Maybe Bool
_multilineTokenSupport = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_serverCancelSupport:SemanticTokensClientCapabilities :: Maybe Bool
_serverCancelSupport = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_augmentsSyntaxTokens:SemanticTokensClientCapabilities :: Maybe Bool
_augmentsSyntaxTokens = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      }

  td :: TextDocumentClientCapabilities
td =
    TextDocumentClientCapabilities
      { $sel:_synchronization:TextDocumentClientCapabilities :: Maybe TextDocumentSyncClientCapabilities
_synchronization = TextDocumentSyncClientCapabilities
-> Maybe TextDocumentSyncClientCapabilities
forall a. a -> Maybe a
Just TextDocumentSyncClientCapabilities
sync
      , $sel:_completion:TextDocumentClientCapabilities :: Maybe CompletionClientCapabilities
_completion = CompletionClientCapabilities -> Maybe CompletionClientCapabilities
forall a. a -> Maybe a
Just CompletionClientCapabilities
completionCapability
      , $sel:_hover:TextDocumentClientCapabilities :: Maybe HoverClientCapabilities
_hover = HoverClientCapabilities -> Maybe HoverClientCapabilities
forall a. a -> Maybe a
Just HoverClientCapabilities
hoverCapability
      , $sel:_signatureHelp:TextDocumentClientCapabilities :: Maybe SignatureHelpClientCapabilities
_signatureHelp = SignatureHelpClientCapabilities
-> Maybe SignatureHelpClientCapabilities
forall a. a -> Maybe a
Just SignatureHelpClientCapabilities
signatureHelpCapability
      , $sel:_references:TextDocumentClientCapabilities :: Maybe ReferenceClientCapabilities
_references = ReferenceClientCapabilities -> Maybe ReferenceClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> ReferenceClientCapabilities
ReferenceClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_documentHighlight:TextDocumentClientCapabilities :: Maybe DocumentHighlightClientCapabilities
_documentHighlight = DocumentHighlightClientCapabilities
-> Maybe DocumentHighlightClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> DocumentHighlightClientCapabilities
DocumentHighlightClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_documentSymbol:TextDocumentClientCapabilities :: Maybe DocumentSymbolClientCapabilities
_documentSymbol = DocumentSymbolClientCapabilities
-> Maybe DocumentSymbolClientCapabilities
forall a. a -> Maybe a
Just DocumentSymbolClientCapabilities
documentSymbolCapability
      , $sel:_formatting:TextDocumentClientCapabilities :: Maybe DocumentFormattingClientCapabilities
_formatting = DocumentFormattingClientCapabilities
-> Maybe DocumentFormattingClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> DocumentFormattingClientCapabilities
DocumentFormattingClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_rangeFormatting:TextDocumentClientCapabilities :: Maybe DocumentRangeFormattingClientCapabilities
_rangeFormatting = DocumentRangeFormattingClientCapabilities
-> Maybe DocumentRangeFormattingClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> DocumentRangeFormattingClientCapabilities
DocumentRangeFormattingClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_onTypeFormatting:TextDocumentClientCapabilities :: Maybe DocumentOnTypeFormattingClientCapabilities
_onTypeFormatting = DocumentOnTypeFormattingClientCapabilities
-> Maybe DocumentOnTypeFormattingClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> DocumentOnTypeFormattingClientCapabilities
DocumentOnTypeFormattingClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_declaration:TextDocumentClientCapabilities :: Maybe DeclarationClientCapabilities
_declaration = Int
-> Int
-> DeclarationClientCapabilities
-> Maybe DeclarationClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
14 (Maybe Bool -> Maybe Bool -> DeclarationClientCapabilities
DeclarationClientCapabilities Maybe Bool
dynamicReg (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True))
      , $sel:_definition:TextDocumentClientCapabilities :: Maybe DefinitionClientCapabilities
_definition = DefinitionClientCapabilities -> Maybe DefinitionClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> Maybe Bool -> DefinitionClientCapabilities
DefinitionClientCapabilities Maybe Bool
dynamicReg (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
14 Bool
True))
      , $sel:_typeDefinition:TextDocumentClientCapabilities :: Maybe TypeDefinitionClientCapabilities
_typeDefinition = Int
-> Int
-> TypeDefinitionClientCapabilities
-> Maybe TypeDefinitionClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
6 (Maybe Bool -> Maybe Bool -> TypeDefinitionClientCapabilities
TypeDefinitionClientCapabilities Maybe Bool
dynamicReg (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
14 Bool
True))
      , $sel:_implementation:TextDocumentClientCapabilities :: Maybe ImplementationClientCapabilities
_implementation = Int
-> Int
-> ImplementationClientCapabilities
-> Maybe ImplementationClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
6 (Maybe Bool -> Maybe Bool -> ImplementationClientCapabilities
ImplementationClientCapabilities Maybe Bool
dynamicReg (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
14 Bool
True))
      , $sel:_codeAction:TextDocumentClientCapabilities :: Maybe CodeActionClientCapabilities
_codeAction = CodeActionClientCapabilities -> Maybe CodeActionClientCapabilities
forall a. a -> Maybe a
Just CodeActionClientCapabilities
codeActionCapability
      , $sel:_codeLens:TextDocumentClientCapabilities :: Maybe CodeLensClientCapabilities
_codeLens = CodeLensClientCapabilities -> Maybe CodeLensClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> CodeLensClientCapabilities
CodeLensClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_documentLink:TextDocumentClientCapabilities :: Maybe DocumentLinkClientCapabilities
_documentLink = DocumentLinkClientCapabilities
-> Maybe DocumentLinkClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool -> Maybe Bool -> DocumentLinkClientCapabilities
DocumentLinkClientCapabilities Maybe Bool
dynamicReg (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
15 Bool
True))
      , $sel:_colorProvider:TextDocumentClientCapabilities :: Maybe DocumentColorClientCapabilities
_colorProvider = Int
-> Int
-> DocumentColorClientCapabilities
-> Maybe DocumentColorClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
6 (Maybe Bool -> DocumentColorClientCapabilities
DocumentColorClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_rename:TextDocumentClientCapabilities :: Maybe RenameClientCapabilities
_rename = RenameClientCapabilities -> Maybe RenameClientCapabilities
forall a. a -> Maybe a
Just (Maybe Bool
-> Maybe Bool
-> Maybe PrepareSupportDefaultBehavior
-> Maybe Bool
-> RenameClientCapabilities
RenameClientCapabilities Maybe Bool
dynamicReg (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
12 Bool
True) (Int
-> Int
-> PrepareSupportDefaultBehavior
-> Maybe PrepareSupportDefaultBehavior
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 PrepareSupportDefaultBehavior
PrepareSupportDefaultBehavior_Identifier) (Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True))
      , $sel:_publishDiagnostics:TextDocumentClientCapabilities :: Maybe PublishDiagnosticsClientCapabilities
_publishDiagnostics = PublishDiagnosticsClientCapabilities
-> Maybe PublishDiagnosticsClientCapabilities
forall a. a -> Maybe a
Just PublishDiagnosticsClientCapabilities
publishDiagnosticsCapabilities
      , $sel:_foldingRange:TextDocumentClientCapabilities :: Maybe FoldingRangeClientCapabilities
_foldingRange = Int
-> Int
-> FoldingRangeClientCapabilities
-> Maybe FoldingRangeClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
10 FoldingRangeClientCapabilities
foldingRangeCapability
      , $sel:_selectionRange:TextDocumentClientCapabilities :: Maybe SelectionRangeClientCapabilities
_selectionRange = Int
-> Int
-> SelectionRangeClientCapabilities
-> Maybe SelectionRangeClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
5 (Maybe Bool -> SelectionRangeClientCapabilities
SelectionRangeClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_callHierarchy:TextDocumentClientCapabilities :: Maybe CallHierarchyClientCapabilities
_callHierarchy = Int
-> Int
-> CallHierarchyClientCapabilities
-> Maybe CallHierarchyClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Maybe Bool -> CallHierarchyClientCapabilities
CallHierarchyClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_semanticTokens:TextDocumentClientCapabilities :: Maybe SemanticTokensClientCapabilities
_semanticTokens = Int
-> Int
-> SemanticTokensClientCapabilities
-> Maybe SemanticTokensClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 SemanticTokensClientCapabilities
semanticTokensCapabilities
      , $sel:_linkedEditingRange:TextDocumentClientCapabilities :: Maybe LinkedEditingRangeClientCapabilities
_linkedEditingRange = Int
-> Int
-> LinkedEditingRangeClientCapabilities
-> Maybe LinkedEditingRangeClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Maybe Bool -> LinkedEditingRangeClientCapabilities
LinkedEditingRangeClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_moniker:TextDocumentClientCapabilities :: Maybe MonikerClientCapabilities
_moniker = Int
-> Int
-> MonikerClientCapabilities
-> Maybe MonikerClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Maybe Bool -> MonikerClientCapabilities
MonikerClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_inlayHint:TextDocumentClientCapabilities :: Maybe InlayHintClientCapabilities
_inlayHint = Int
-> Int
-> InlayHintClientCapabilities
-> Maybe InlayHintClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 InlayHintClientCapabilities
inlayHintCapabilities
      , $sel:_typeHierarchy:TextDocumentClientCapabilities :: Maybe TypeHierarchyClientCapabilities
_typeHierarchy = Int
-> Int
-> TypeHierarchyClientCapabilities
-> Maybe TypeHierarchyClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> TypeHierarchyClientCapabilities
TypeHierarchyClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_inlineValue:TextDocumentClientCapabilities :: Maybe InlineValueClientCapabilities
_inlineValue = Int
-> Int
-> InlineValueClientCapabilities
-> Maybe InlineValueClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> InlineValueClientCapabilities
InlineValueClientCapabilities Maybe Bool
dynamicReg)
      , $sel:_diagnostic:TextDocumentClientCapabilities :: Maybe DiagnosticClientCapabilities
_diagnostic = Int
-> Int
-> DiagnosticClientCapabilities
-> Maybe DiagnosticClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Maybe Bool -> Maybe Bool -> DiagnosticClientCapabilities
DiagnosticClientCapabilities Maybe Bool
dynamicReg (Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True))
      }

  sync :: TextDocumentSyncClientCapabilities
sync =
    TextDocumentSyncClientCapabilities
      { $sel:_dynamicRegistration:TextDocumentSyncClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_willSave:TextDocumentSyncClientCapabilities :: Maybe Bool
_willSave = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_willSaveWaitUntil:TextDocumentSyncClientCapabilities :: Maybe Bool
_willSaveWaitUntil = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      , $sel:_didSave:TextDocumentSyncClientCapabilities :: Maybe Bool
_didSave = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
      }

  completionCapability :: CompletionClientCapabilities
completionCapability =
    CompletionClientCapabilities
      { $sel:_dynamicRegistration:CompletionClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_completionItem:CompletionClientCapabilities :: Maybe
  (Rec
     (("snippetSupport" .== Maybe Bool)
      .+ (("commitCharactersSupport" .== Maybe Bool)
          .+ (Extend "documentationFormat" (Maybe [MarkupKind]) ('R '[])
              .+ (("deprecatedSupport" .== Maybe Bool)
                  .+ (("preselectSupport" .== Maybe Bool)
                      .+ (("tagSupport"
                           .== Maybe (Rec (("valueSet" .== [CompletionItemTag]) .+ 'R '[])))
                          .+ (("insertReplaceSupport" .== Maybe Bool)
                              .+ (("resolveSupport"
                                   .== Maybe (Rec (("properties" .== [Text]) .+ 'R '[])))
                                  .+ (("insertTextModeSupport"
                                       .== Maybe
                                             (Rec (("valueSet" .== [InsertTextMode]) .+ 'R '[])))
                                      .+ (("labelDetailsSupport" .== Maybe Bool)
                                          .+ 'R '[])))))))))))
_completionItem = Rec
  ('R
     '["commitCharactersSupport" ':-> Maybe Bool,
       "deprecatedSupport" ':-> Maybe Bool,
       "documentationFormat" ':-> Maybe [MarkupKind],
       "insertReplaceSupport" ':-> Maybe Bool,
       "insertTextModeSupport"
       ':-> Maybe (Rec ('R '["valueSet" ':-> [InsertTextMode]])),
       "labelDetailsSupport" ':-> Maybe Bool,
       "preselectSupport" ':-> Maybe Bool,
       "resolveSupport" ':-> Maybe (Rec ('R '["properties" ':-> [Text]])),
       "snippetSupport" ':-> Maybe Bool,
       "tagSupport"
       ':-> Maybe (Rec ('R '["valueSet" ':-> [CompletionItemTag]]))])
-> Maybe
     (Rec
        ('R
           '["commitCharactersSupport" ':-> Maybe Bool,
             "deprecatedSupport" ':-> Maybe Bool,
             "documentationFormat" ':-> Maybe [MarkupKind],
             "insertReplaceSupport" ':-> Maybe Bool,
             "insertTextModeSupport"
             ':-> Maybe (Rec ('R '["valueSet" ':-> [InsertTextMode]])),
             "labelDetailsSupport" ':-> Maybe Bool,
             "preselectSupport" ':-> Maybe Bool,
             "resolveSupport" ':-> Maybe (Rec ('R '["properties" ':-> [Text]])),
             "snippetSupport" ':-> Maybe Bool,
             "tagSupport"
             ':-> Maybe (Rec ('R '["valueSet" ':-> [CompletionItemTag]]))]))
forall a. a -> Maybe a
Just Rec
  ('R
     '["commitCharactersSupport" ':-> Maybe Bool,
       "deprecatedSupport" ':-> Maybe Bool,
       "documentationFormat" ':-> Maybe [MarkupKind],
       "insertReplaceSupport" ':-> Maybe Bool,
       "insertTextModeSupport"
       ':-> Maybe (Rec ('R '["valueSet" ':-> [InsertTextMode]])),
       "labelDetailsSupport" ':-> Maybe Bool,
       "preselectSupport" ':-> Maybe Bool,
       "resolveSupport" ':-> Maybe (Rec ('R '["properties" ':-> [Text]])),
       "snippetSupport" ':-> Maybe Bool,
       "tagSupport"
       ':-> Maybe (Rec ('R '["valueSet" ':-> [CompletionItemTag]]))])
forall {a} {a}.
Rec
  ('R
     '["commitCharactersSupport" ':-> Maybe Bool,
       "deprecatedSupport" ':-> Maybe Bool,
       "documentationFormat" ':-> Maybe [MarkupKind],
       "insertReplaceSupport" ':-> Maybe Bool,
       "insertTextModeSupport"
       ':-> Maybe (Rec ('R '["valueSet" ':-> [a]])),
       "labelDetailsSupport" ':-> Maybe Bool,
       "preselectSupport" ':-> Maybe Bool,
       "resolveSupport" ':-> Maybe (Rec ('R '["properties" ':-> [Text]])),
       "snippetSupport" ':-> Maybe Bool,
       "tagSupport" ':-> Maybe (Rec ('R '["valueSet" ':-> [a]]))])
completionItemCapabilities
      , $sel:_completionItemKind:CompletionClientCapabilities :: Maybe (Rec (("valueSet" .== Maybe [CompletionItemKind]) .+ 'R '[]))
_completionItemKind = Int
-> Int
-> Rec ('R '["valueSet" ':-> Maybe [CompletionItemKind]])
-> Maybe (Rec ('R '["valueSet" ':-> Maybe [CompletionItemKind]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
4 (Label "valueSet"
#valueSet Label "valueSet"
-> Maybe [CompletionItemKind]
-> Rec ("valueSet" .== Maybe [CompletionItemKind])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [CompletionItemKind] -> Maybe [CompletionItemKind]
forall a. a -> Maybe a
Just [CompletionItemKind]
ciKs)
      , $sel:_insertTextMode:CompletionClientCapabilities :: Maybe InsertTextMode
_insertTextMode = Int -> Int -> InsertTextMode -> Maybe InsertTextMode
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 InsertTextMode
InsertTextMode_AsIs
      , $sel:_contextSupport:CompletionClientCapabilities :: Maybe Bool
_contextSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
3 Bool
True
      , $sel:_completionList:CompletionClientCapabilities :: Maybe (Rec (("itemDefaults" .== Maybe [Text]) .+ 'R '[]))
_completionList = Int
-> Int
-> Rec ('R '["itemDefaults" ':-> Maybe [Text]])
-> Maybe (Rec ('R '["itemDefaults" ':-> Maybe [Text]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Label "itemDefaults"
#itemDefaults Label "itemDefaults"
-> Maybe [Text] -> Rec ("itemDefaults" .== Maybe [Text])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just [])
      }

  inlayHintCapabilities :: InlayHintClientCapabilities
inlayHintCapabilities =
    InlayHintClientCapabilities
      { $sel:_dynamicRegistration:InlayHintClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_resolveSupport:InlayHintClientCapabilities :: Maybe (Rec (("properties" .== [Text]) .+ 'R '[]))
_resolveSupport = Rec ('R '["properties" ':-> [Text]])
-> Maybe (Rec ('R '["properties" ':-> [Text]]))
forall a. a -> Maybe a
Just (Label "properties"
#properties Label "properties" -> [Text] -> Rec ("properties" .== [Text])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [])
      }

  completionItemCapabilities :: Rec
  ((((((((('R '["snippetSupport" ':-> Maybe Bool]
           .+ 'R '["commitCharactersSupport" ':-> Maybe Bool])
          .+ 'R '["documentationFormat" ':-> Maybe [MarkupKind]])
         .+ 'R '["deprecatedSupport" ':-> Maybe Bool])
        .+ 'R '["preselectSupport" ':-> Maybe Bool])
       .+ 'R '["tagSupport" ':-> Maybe (Rec ('R '["valueSet" ':-> [a]]))])
      .+ 'R '["insertReplaceSupport" ':-> Maybe Bool])
     .+ 'R
          '["resolveSupport"
            ':-> Maybe (Rec ('R '["properties" ':-> [Text]]))])
    .+ 'R
         '["insertTextModeSupport"
           ':-> Maybe (Rec ('R '["valueSet" ':-> [a]]))])
   .+ 'R '["labelDetailsSupport" ':-> Maybe Bool])
completionItemCapabilities =
    #snippetSupport .== Just True
      .+ #commitCharactersSupport .== Just True
      .+ #documentationFormat .== since 3 3 allMarkups
      .+ #deprecatedSupport .== Just True
      .+ #preselectSupport .== since 3 9 True
      .+ #tagSupport .== since 3 15 (#valueSet .== [])
      .+ #insertReplaceSupport .== since 3 16 True
      .+ #resolveSupport .== since 3 16 (#properties .== ["documentation", "details"])
      .+ #insertTextModeSupport .== since 3 16 (#valueSet .== [])
      .+ #labelDetailsSupport .== since 3 17 True

  ciKs :: [CompletionItemKind]
ciKs
    | Int
maj Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
3 Bool -> Bool -> Bool
&& Int
min Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
4 = [CompletionItemKind]
oldCiKs [CompletionItemKind]
-> [CompletionItemKind] -> [CompletionItemKind]
forall a. [a] -> [a] -> [a]
++ [CompletionItemKind]
newCiKs
    | Bool
otherwise = [CompletionItemKind]
oldCiKs

  oldCiKs :: [CompletionItemKind]
oldCiKs =
    [ CompletionItemKind
CompletionItemKind_Text
    , CompletionItemKind
CompletionItemKind_Method
    , CompletionItemKind
CompletionItemKind_Function
    , CompletionItemKind
CompletionItemKind_Constructor
    , CompletionItemKind
CompletionItemKind_Field
    , CompletionItemKind
CompletionItemKind_Variable
    , CompletionItemKind
CompletionItemKind_Class
    , CompletionItemKind
CompletionItemKind_Interface
    , CompletionItemKind
CompletionItemKind_Module
    , CompletionItemKind
CompletionItemKind_Property
    , CompletionItemKind
CompletionItemKind_Unit
    , CompletionItemKind
CompletionItemKind_Value
    , CompletionItemKind
CompletionItemKind_Enum
    , CompletionItemKind
CompletionItemKind_Keyword
    , CompletionItemKind
CompletionItemKind_Snippet
    , CompletionItemKind
CompletionItemKind_Color
    , CompletionItemKind
CompletionItemKind_File
    , CompletionItemKind
CompletionItemKind_Reference
    ]

  newCiKs :: [CompletionItemKind]
newCiKs =
    [ CompletionItemKind
CompletionItemKind_Folder
    , CompletionItemKind
CompletionItemKind_EnumMember
    , CompletionItemKind
CompletionItemKind_Constant
    , CompletionItemKind
CompletionItemKind_Struct
    , CompletionItemKind
CompletionItemKind_Event
    , CompletionItemKind
CompletionItemKind_Operator
    , CompletionItemKind
CompletionItemKind_TypeParameter
    ]

  hoverCapability :: HoverClientCapabilities
hoverCapability =
    HoverClientCapabilities
      { $sel:_dynamicRegistration:HoverClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_contentFormat:HoverClientCapabilities :: Maybe [MarkupKind]
_contentFormat = Int -> Int -> [MarkupKind] -> Maybe [MarkupKind]
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
3 [MarkupKind]
allMarkups
      }

  codeActionCapability :: CodeActionClientCapabilities
codeActionCapability =
    CodeActionClientCapabilities
      { $sel:_dynamicRegistration:CodeActionClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_codeActionLiteralSupport:CodeActionClientCapabilities :: Maybe
  (Rec
     (("codeActionKind"
       .== Rec (("valueSet" .== [CodeActionKind]) .+ 'R '[]))
      .+ 'R '[]))
_codeActionLiteralSupport = Int
-> Int
-> Rec
     ('R
        '["codeActionKind"
          ':-> Rec ('R '["valueSet" ':-> [CodeActionKind]])])
-> Maybe
     (Rec
        ('R
           '["codeActionKind"
             ':-> Rec ('R '["valueSet" ':-> [CodeActionKind]])]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
8 (Label "codeActionKind"
#codeActionKind Label "codeActionKind"
-> Rec ('R '["valueSet" ':-> [CodeActionKind]])
-> Rec
     ("codeActionKind" .== Rec ('R '["valueSet" ':-> [CodeActionKind]]))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== (Label "valueSet"
#valueSet Label "valueSet"
-> [CodeActionKind] -> Rec ("valueSet" .== [CodeActionKind])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Set CodeActionKind -> [CodeActionKind]
forall a. Set a -> [a]
Set.toList Set CodeActionKind
forall a. LspEnum a => Set a
knownValues))
      , $sel:_isPreferredSupport:CodeActionClientCapabilities :: Maybe Bool
_isPreferredSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
15 Bool
True
      , $sel:_disabledSupport:CodeActionClientCapabilities :: Maybe Bool
_disabledSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      , $sel:_dataSupport:CodeActionClientCapabilities :: Maybe Bool
_dataSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      , $sel:_resolveSupport:CodeActionClientCapabilities :: Maybe (Rec (("properties" .== [Text]) .+ 'R '[]))
_resolveSupport = Int
-> Int
-> Rec ('R '["properties" ':-> [Text]])
-> Maybe (Rec ('R '["properties" ':-> [Text]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "properties"
#properties Label "properties" -> [Text] -> Rec ("properties" .== [Text])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [])
      , $sel:_honorsChangeAnnotations:CodeActionClientCapabilities :: Maybe Bool
_honorsChangeAnnotations = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      }

  signatureHelpCapability :: SignatureHelpClientCapabilities
signatureHelpCapability =
    SignatureHelpClientCapabilities
      { $sel:_dynamicRegistration:SignatureHelpClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_signatureInformation:SignatureHelpClientCapabilities :: Maybe
  (Rec
     (Extend "documentationFormat" (Maybe [MarkupKind]) ('R '[])
      .+ (("parameterInformation"
           .== Maybe (Rec (("labelOffsetSupport" .== Maybe Bool) .+ 'R '[])))
          .+ (("activeParameterSupport" .== Maybe Bool) .+ 'R '[]))))
_signatureInformation = Rec
  ('R
     '["activeParameterSupport" ':-> Maybe Bool,
       "documentationFormat" ':-> Maybe [MarkupKind],
       "parameterInformation"
       ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))])
-> Maybe
     (Rec
        ('R
           '["activeParameterSupport" ':-> Maybe Bool,
             "documentationFormat" ':-> Maybe [MarkupKind],
             "parameterInformation"
             ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))]))
forall a. a -> Maybe a
Just (Label "documentationFormat"
#documentationFormat Label "documentationFormat"
-> Maybe [MarkupKind]
-> Rec (Extend "documentationFormat" (Maybe [MarkupKind]) ('R '[]))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [MarkupKind] -> Maybe [MarkupKind]
forall a. a -> Maybe a
Just [MarkupKind]
allMarkups Rec ('R '["documentationFormat" ':-> Maybe [MarkupKind]])
-> Rec
     ('R
        '["parameterInformation"
          ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))])
-> Rec
     ('R '["documentationFormat" ':-> Maybe [MarkupKind]]
      .+ 'R
           '["parameterInformation"
             ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))])
forall (l :: Row (*)) (r :: Row (*)).
FreeForall l =>
Rec l -> Rec r -> Rec (l .+ r)
.+ Label "parameterInformation"
#parameterInformation Label "parameterInformation"
-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))
-> Rec
     (Extend
        "parameterInformation"
        (Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool])))
        ('R '[]))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Rec ('R '["labelOffsetSupport" ':-> Maybe Bool])
-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))
forall a. a -> Maybe a
Just (Label "labelOffsetSupport"
#labelOffsetSupport Label "labelOffsetSupport"
-> Maybe Bool -> Rec ("labelOffsetSupport" .== Maybe Bool)
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True) Rec
  ('R '["documentationFormat" ':-> Maybe [MarkupKind]]
   .+ 'R
        '["parameterInformation"
          ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))])
-> Rec ('R '["activeParameterSupport" ':-> Maybe Bool])
-> Rec
     (('R '["documentationFormat" ':-> Maybe [MarkupKind]]
       .+ 'R
            '["parameterInformation"
              ':-> Maybe (Rec ('R '["labelOffsetSupport" ':-> Maybe Bool]))])
      .+ 'R '["activeParameterSupport" ':-> Maybe Bool])
forall (l :: Row (*)) (r :: Row (*)).
FreeForall l =>
Rec l -> Rec r -> Rec (l .+ r)
.+ Label "activeParameterSupport"
#activeParameterSupport Label "activeParameterSupport"
-> Maybe Bool -> Rec ("activeParameterSupport" .== Maybe Bool)
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      , $sel:_contextSupport:SignatureHelpClientCapabilities :: Maybe Bool
_contextSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      }

  documentSymbolCapability :: DocumentSymbolClientCapabilities
documentSymbolCapability =
    DocumentSymbolClientCapabilities
      { $sel:_dynamicRegistration:DocumentSymbolClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , -- same as workspace symbol kinds
        $sel:_symbolKind:DocumentSymbolClientCapabilities :: Maybe (Rec (("valueSet" .== Maybe [SymbolKind]) .+ 'R '[]))
_symbolKind = Rec ('R '["valueSet" ':-> Maybe [SymbolKind]])
-> Maybe (Rec ('R '["valueSet" ':-> Maybe [SymbolKind]]))
forall a. a -> Maybe a
Just (Label "valueSet"
#valueSet Label "valueSet"
-> Maybe [SymbolKind] -> Rec ("valueSet" .== Maybe [SymbolKind])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [SymbolKind] -> Maybe [SymbolKind]
forall a. a -> Maybe a
Just [SymbolKind]
sKs)
      , $sel:_hierarchicalDocumentSymbolSupport:DocumentSymbolClientCapabilities :: Maybe Bool
_hierarchicalDocumentSymbolSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
10 Bool
True
      , $sel:_tagSupport:DocumentSymbolClientCapabilities :: Maybe (Rec (("valueSet" .== [SymbolTag]) .+ 'R '[]))
_tagSupport = Int
-> Int
-> Rec ('R '["valueSet" ':-> [SymbolTag]])
-> Maybe (Rec ('R '["valueSet" ':-> [SymbolTag]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "valueSet"
#valueSet Label "valueSet" -> [SymbolTag] -> Rec ("valueSet" .== [SymbolTag])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [SymbolTag
SymbolTag_Deprecated])
      , $sel:_labelSupport:DocumentSymbolClientCapabilities :: Maybe Bool
_labelSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      }

  foldingRangeCapability :: FoldingRangeClientCapabilities
foldingRangeCapability =
    FoldingRangeClientCapabilities
      { $sel:_dynamicRegistration:FoldingRangeClientCapabilities :: Maybe Bool
_dynamicRegistration = Maybe Bool
dynamicReg
      , $sel:_rangeLimit:FoldingRangeClientCapabilities :: Maybe UInt
_rangeLimit = Maybe UInt
forall a. Maybe a
Nothing
      , $sel:_lineFoldingOnly:FoldingRangeClientCapabilities :: Maybe Bool
_lineFoldingOnly = Maybe Bool
forall a. Maybe a
Nothing
      , $sel:_foldingRangeKind:FoldingRangeClientCapabilities :: Maybe (Rec (("valueSet" .== Maybe [FoldingRangeKind]) .+ 'R '[]))
_foldingRangeKind = Int
-> Int
-> Rec ('R '["valueSet" ':-> Maybe [FoldingRangeKind]])
-> Maybe (Rec ('R '["valueSet" ':-> Maybe [FoldingRangeKind]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 (Label "valueSet"
#valueSet Label "valueSet"
-> Maybe [FoldingRangeKind]
-> Rec ("valueSet" .== Maybe [FoldingRangeKind])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [FoldingRangeKind] -> Maybe [FoldingRangeKind]
forall a. a -> Maybe a
Just [])
      , $sel:_foldingRange:FoldingRangeClientCapabilities :: Maybe (Rec (("collapsedText" .== Maybe Bool) .+ 'R '[]))
_foldingRange = Int
-> Int
-> Rec ('R '["collapsedText" ':-> Maybe Bool])
-> Maybe (Rec ('R '["collapsedText" ':-> Maybe Bool]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "collapsedText"
#collapsedText Label "collapsedText"
-> Maybe Bool -> Rec ("collapsedText" .== Maybe Bool)
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True)
      }

  publishDiagnosticsCapabilities :: PublishDiagnosticsClientCapabilities
publishDiagnosticsCapabilities =
    PublishDiagnosticsClientCapabilities
      { $sel:_relatedInformation:PublishDiagnosticsClientCapabilities :: Maybe Bool
_relatedInformation = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
7 Bool
True
      , $sel:_tagSupport:PublishDiagnosticsClientCapabilities :: Maybe (Rec (("valueSet" .== [DiagnosticTag]) .+ 'R '[]))
_tagSupport = Int
-> Int
-> Rec ('R '["valueSet" ':-> [DiagnosticTag]])
-> Maybe (Rec ('R '["valueSet" ':-> [DiagnosticTag]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
15 (Label "valueSet"
#valueSet Label "valueSet"
-> [DiagnosticTag] -> Rec ("valueSet" .== [DiagnosticTag])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [DiagnosticTag
DiagnosticTag_Unnecessary, DiagnosticTag
DiagnosticTag_Deprecated])
      , $sel:_versionSupport:PublishDiagnosticsClientCapabilities :: Maybe Bool
_versionSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
15 Bool
True
      , $sel:_codeDescriptionSupport:PublishDiagnosticsClientCapabilities :: Maybe Bool
_codeDescriptionSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      , $sel:_dataSupport:PublishDiagnosticsClientCapabilities :: Maybe Bool
_dataSupport = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 Bool
True
      }

  dynamicReg :: Maybe Bool
dynamicReg
    | Int
maj Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
3 = Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
True
    | Bool
otherwise = Maybe Bool
forall a. Maybe a
Nothing
  since :: Int -> Int -> a -> Maybe a
  since :: forall a. Int -> Int -> a -> Maybe a
since Int
x Int
y a
a
    | Int
maj Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
x Bool -> Bool -> Bool
&& Int
min Int -> Int -> Bool
forall a. Ord a => a -> a -> Bool
>= Int
y = a -> Maybe a
forall a. a -> Maybe a
Just a
a
    | Bool
otherwise = Maybe a
forall a. Maybe a
Nothing

  window :: WindowClientCapabilities
window =
    WindowClientCapabilities
      { $sel:_workDoneProgress:WindowClientCapabilities :: Maybe Bool
_workDoneProgress = Int -> Int -> Bool -> Maybe Bool
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
15 Bool
True
      , $sel:_showMessage:WindowClientCapabilities :: Maybe ShowMessageRequestClientCapabilities
_showMessage = Int
-> Int
-> ShowMessageRequestClientCapabilities
-> Maybe ShowMessageRequestClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (ShowMessageRequestClientCapabilities
 -> Maybe ShowMessageRequestClientCapabilities)
-> ShowMessageRequestClientCapabilities
-> Maybe ShowMessageRequestClientCapabilities
forall a b. (a -> b) -> a -> b
$ Maybe
  (Rec (("additionalPropertiesSupport" .== Maybe Bool) .+ 'R '[]))
-> ShowMessageRequestClientCapabilities
ShowMessageRequestClientCapabilities Maybe
  (Rec (("additionalPropertiesSupport" .== Maybe Bool) .+ 'R '[]))
Maybe (Rec ('R '["additionalPropertiesSupport" ':-> Maybe Bool]))
forall a. Maybe a
Nothing
      , $sel:_showDocument:WindowClientCapabilities :: Maybe ShowDocumentClientCapabilities
_showDocument = Int
-> Int
-> ShowDocumentClientCapabilities
-> Maybe ShowDocumentClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (ShowDocumentClientCapabilities
 -> Maybe ShowDocumentClientCapabilities)
-> ShowDocumentClientCapabilities
-> Maybe ShowDocumentClientCapabilities
forall a b. (a -> b) -> a -> b
$ Bool -> ShowDocumentClientCapabilities
ShowDocumentClientCapabilities Bool
True
      }

  general :: GeneralClientCapabilities
general =
    GeneralClientCapabilities
      { $sel:_staleRequestSupport:GeneralClientCapabilities :: Maybe
  (Rec
     (Extend "cancel" Bool ('R '[])
      .+ (("retryOnContentModified" .== [Text]) .+ 'R '[])))
_staleRequestSupport = Int
-> Int
-> Rec
     ('R '["cancel" ':-> Bool, "retryOnContentModified" ':-> [Text]])
-> Maybe
     (Rec
        ('R '["cancel" ':-> Bool, "retryOnContentModified" ':-> [Text]]))
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (Label "cancel"
#cancel Label "cancel" -> Bool -> Rec (Extend "cancel" Bool ('R '[]))
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== Bool
True Rec ('R '["cancel" ':-> Bool])
-> Rec ('R '["retryOnContentModified" ':-> [Text]])
-> Rec
     ('R '["cancel" ':-> Bool]
      .+ 'R '["retryOnContentModified" ':-> [Text]])
forall (l :: Row (*)) (r :: Row (*)).
FreeForall l =>
Rec l -> Rec r -> Rec (l .+ r)
.+ Label "retryOnContentModified"
#retryOnContentModified Label "retryOnContentModified"
-> [Text] -> Rec ("retryOnContentModified" .== [Text])
forall (l :: Symbol) a.
KnownSymbol l =>
Label l -> a -> Rec (l .== a)
.== [])
      , $sel:_regularExpressions:GeneralClientCapabilities :: Maybe RegularExpressionsClientCapabilities
_regularExpressions = Int
-> Int
-> RegularExpressionsClientCapabilities
-> Maybe RegularExpressionsClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (RegularExpressionsClientCapabilities
 -> Maybe RegularExpressionsClientCapabilities)
-> RegularExpressionsClientCapabilities
-> Maybe RegularExpressionsClientCapabilities
forall a b. (a -> b) -> a -> b
$ Text -> Maybe Text -> RegularExpressionsClientCapabilities
RegularExpressionsClientCapabilities Text
"" Maybe Text
forall a. Maybe a
Nothing
      , $sel:_markdown:GeneralClientCapabilities :: Maybe MarkdownClientCapabilities
_markdown = Int
-> Int
-> MarkdownClientCapabilities
-> Maybe MarkdownClientCapabilities
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
16 (MarkdownClientCapabilities -> Maybe MarkdownClientCapabilities)
-> MarkdownClientCapabilities -> Maybe MarkdownClientCapabilities
forall a b. (a -> b) -> a -> b
$ Text -> Maybe Text -> Maybe [Text] -> MarkdownClientCapabilities
MarkdownClientCapabilities Text
"" Maybe Text
forall a. Maybe a
Nothing ([Text] -> Maybe [Text]
forall a. a -> Maybe a
Just [])
      , $sel:_positionEncodings:GeneralClientCapabilities :: Maybe [PositionEncodingKind]
_positionEncodings = Int
-> Int -> [PositionEncodingKind] -> Maybe [PositionEncodingKind]
forall a. Int -> Int -> a -> Maybe a
since Int
3 Int
17 [PositionEncodingKind
PositionEncodingKind_UTF16]
      }

  allMarkups :: [MarkupKind]
allMarkups = [MarkupKind
MarkupKind_PlainText, MarkupKind
MarkupKind_Markdown]

-- | Whether the client supports dynamic registration for the given method.
dynamicRegistrationSupported :: SMethod m -> ClientCapabilities -> Bool
dynamicRegistrationSupported :: forall {f :: MessageDirection} {t :: MessageKind}
       (m :: Method f t).
SMethod m -> ClientCapabilities -> Bool
dynamicRegistrationSupported SMethod m
method ClientCapabilities
caps = Bool -> Maybe Bool -> Bool
forall a. a -> Maybe a -> a
fromMaybe Bool
False (Maybe Bool -> Bool) -> Maybe Bool -> Bool
forall a b. (a -> b) -> a -> b
$ case SMethod m
method of
  SMethod m
SMethod_WorkspaceDidChangeConfiguration -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DidChangeConfigurationClientCapabilities
 -> Const
      (First Bool) (Maybe DidChangeConfigurationClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasDidChangeConfiguration s a => Lens' s a
Lens'
  WorkspaceClientCapabilities
  (Maybe DidChangeConfigurationClientCapabilities)
L.didChangeConfiguration ((Maybe DidChangeConfigurationClientCapabilities
  -> Const
       (First Bool) (Maybe DidChangeConfigurationClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DidChangeConfigurationClientCapabilities
    -> Const
         (First Bool) (Maybe DidChangeConfigurationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DidChangeConfigurationClientCapabilities
 -> Const (First Bool) DidChangeConfigurationClientCapabilities)
-> Maybe DidChangeConfigurationClientCapabilities
-> Const
     (First Bool) (Maybe DidChangeConfigurationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DidChangeConfigurationClientCapabilities
  -> Const (First Bool) DidChangeConfigurationClientCapabilities)
 -> Maybe DidChangeConfigurationClientCapabilities
 -> Const
      (First Bool) (Maybe DidChangeConfigurationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DidChangeConfigurationClientCapabilities
    -> Const (First Bool) DidChangeConfigurationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DidChangeConfigurationClientCapabilities
-> Const
     (First Bool) (Maybe DidChangeConfigurationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DidChangeConfigurationClientCapabilities
-> Const (First Bool) DidChangeConfigurationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DidChangeConfigurationClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceDidChangeWatchedFiles -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DidChangeWatchedFilesClientCapabilities
 -> Const
      (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasDidChangeWatchedFiles s a => Lens' s a
Lens'
  WorkspaceClientCapabilities
  (Maybe DidChangeWatchedFilesClientCapabilities)
L.didChangeWatchedFiles ((Maybe DidChangeWatchedFilesClientCapabilities
  -> Const
       (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DidChangeWatchedFilesClientCapabilities
    -> Const
         (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DidChangeWatchedFilesClientCapabilities
 -> Const (First Bool) DidChangeWatchedFilesClientCapabilities)
-> Maybe DidChangeWatchedFilesClientCapabilities
-> Const
     (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DidChangeWatchedFilesClientCapabilities
  -> Const (First Bool) DidChangeWatchedFilesClientCapabilities)
 -> Maybe DidChangeWatchedFilesClientCapabilities
 -> Const
      (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DidChangeWatchedFilesClientCapabilities
    -> Const (First Bool) DidChangeWatchedFilesClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DidChangeWatchedFilesClientCapabilities
-> Const
     (First Bool) (Maybe DidChangeWatchedFilesClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DidChangeWatchedFilesClientCapabilities
-> Const (First Bool) DidChangeWatchedFilesClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DidChangeWatchedFilesClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceSymbol -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe WorkspaceSymbolClientCapabilities
 -> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasSymbol s a => Lens' s a
Lens'
  WorkspaceClientCapabilities
  (Maybe WorkspaceSymbolClientCapabilities)
L.symbol ((Maybe WorkspaceSymbolClientCapabilities
  -> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe WorkspaceSymbolClientCapabilities
    -> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (WorkspaceSymbolClientCapabilities
 -> Const (First Bool) WorkspaceSymbolClientCapabilities)
-> Maybe WorkspaceSymbolClientCapabilities
-> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((WorkspaceSymbolClientCapabilities
  -> Const (First Bool) WorkspaceSymbolClientCapabilities)
 -> Maybe WorkspaceSymbolClientCapabilities
 -> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceSymbolClientCapabilities
    -> Const (First Bool) WorkspaceSymbolClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe WorkspaceSymbolClientCapabilities
-> Const (First Bool) (Maybe WorkspaceSymbolClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> WorkspaceSymbolClientCapabilities
-> Const (First Bool) WorkspaceSymbolClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' WorkspaceSymbolClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceExecuteCommand -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe ExecuteCommandClientCapabilities
 -> Const (First Bool) (Maybe ExecuteCommandClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasExecuteCommand s a => Lens' s a
Lens'
  WorkspaceClientCapabilities
  (Maybe ExecuteCommandClientCapabilities)
L.executeCommand ((Maybe ExecuteCommandClientCapabilities
  -> Const (First Bool) (Maybe ExecuteCommandClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe ExecuteCommandClientCapabilities
    -> Const (First Bool) (Maybe ExecuteCommandClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ExecuteCommandClientCapabilities
 -> Const (First Bool) ExecuteCommandClientCapabilities)
-> Maybe ExecuteCommandClientCapabilities
-> Const (First Bool) (Maybe ExecuteCommandClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((ExecuteCommandClientCapabilities
  -> Const (First Bool) ExecuteCommandClientCapabilities)
 -> Maybe ExecuteCommandClientCapabilities
 -> Const (First Bool) (Maybe ExecuteCommandClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> ExecuteCommandClientCapabilities
    -> Const (First Bool) ExecuteCommandClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe ExecuteCommandClientCapabilities
-> Const (First Bool) (Maybe ExecuteCommandClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> ExecuteCommandClientCapabilities
-> Const (First Bool) ExecuteCommandClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' ExecuteCommandClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceWillCreateFiles -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasFileOperations s a => Lens' s a
Lens'
  WorkspaceClientCapabilities (Maybe FileOperationClientCapabilities)
L.fileOperations ((Maybe FileOperationClientCapabilities
  -> Const (First Bool) (Maybe FileOperationClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe FileOperationClientCapabilities
    -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (FileOperationClientCapabilities
 -> Const (First Bool) FileOperationClientCapabilities)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((FileOperationClientCapabilities
  -> Const (First Bool) FileOperationClientCapabilities)
 -> Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> FileOperationClientCapabilities
    -> Const (First Bool) FileOperationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> FileOperationClientCapabilities
-> Const (First Bool) FileOperationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' FileOperationClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceDidCreateFiles -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasFileOperations s a => Lens' s a
Lens'
  WorkspaceClientCapabilities (Maybe FileOperationClientCapabilities)
L.fileOperations ((Maybe FileOperationClientCapabilities
  -> Const (First Bool) (Maybe FileOperationClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe FileOperationClientCapabilities
    -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (FileOperationClientCapabilities
 -> Const (First Bool) FileOperationClientCapabilities)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((FileOperationClientCapabilities
  -> Const (First Bool) FileOperationClientCapabilities)
 -> Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> FileOperationClientCapabilities
    -> Const (First Bool) FileOperationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> FileOperationClientCapabilities
-> Const (First Bool) FileOperationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' FileOperationClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceWillDeleteFiles -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasFileOperations s a => Lens' s a
Lens'
  WorkspaceClientCapabilities (Maybe FileOperationClientCapabilities)
L.fileOperations ((Maybe FileOperationClientCapabilities
  -> Const (First Bool) (Maybe FileOperationClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe FileOperationClientCapabilities
    -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (FileOperationClientCapabilities
 -> Const (First Bool) FileOperationClientCapabilities)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((FileOperationClientCapabilities
  -> Const (First Bool) FileOperationClientCapabilities)
 -> Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> FileOperationClientCapabilities
    -> Const (First Bool) FileOperationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> FileOperationClientCapabilities
-> Const (First Bool) FileOperationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' FileOperationClientCapabilities Bool
dyn
  SMethod m
SMethod_WorkspaceDidDeleteFiles -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities WorkspaceClientCapabilities
ws ((WorkspaceClientCapabilities
  -> Const (First Bool) WorkspaceClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> WorkspaceClientCapabilities
    -> Const (First Bool) WorkspaceClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall s a. HasFileOperations s a => Lens' s a
Lens'
  WorkspaceClientCapabilities (Maybe FileOperationClientCapabilities)
L.fileOperations ((Maybe FileOperationClientCapabilities
  -> Const (First Bool) (Maybe FileOperationClientCapabilities))
 -> WorkspaceClientCapabilities
 -> Const (First Bool) WorkspaceClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe FileOperationClientCapabilities
    -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> WorkspaceClientCapabilities
-> Const (First Bool) WorkspaceClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (FileOperationClientCapabilities
 -> Const (First Bool) FileOperationClientCapabilities)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((FileOperationClientCapabilities
  -> Const (First Bool) FileOperationClientCapabilities)
 -> Maybe FileOperationClientCapabilities
 -> Const (First Bool) (Maybe FileOperationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> FileOperationClientCapabilities
    -> Const (First Bool) FileOperationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe FileOperationClientCapabilities
-> Const (First Bool) (Maybe FileOperationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> FileOperationClientCapabilities
-> Const (First Bool) FileOperationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' FileOperationClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDidOpen -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasSynchronization s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe TextDocumentSyncClientCapabilities)
L.synchronization ((Maybe TextDocumentSyncClientCapabilities
  -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe TextDocumentSyncClientCapabilities
    -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TextDocumentSyncClientCapabilities
 -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((TextDocumentSyncClientCapabilities
  -> Const (First Bool) TextDocumentSyncClientCapabilities)
 -> Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentSyncClientCapabilities
    -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> TextDocumentSyncClientCapabilities
-> Const (First Bool) TextDocumentSyncClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' TextDocumentSyncClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDidChange -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasSynchronization s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe TextDocumentSyncClientCapabilities)
L.synchronization ((Maybe TextDocumentSyncClientCapabilities
  -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe TextDocumentSyncClientCapabilities
    -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TextDocumentSyncClientCapabilities
 -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((TextDocumentSyncClientCapabilities
  -> Const (First Bool) TextDocumentSyncClientCapabilities)
 -> Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentSyncClientCapabilities
    -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> TextDocumentSyncClientCapabilities
-> Const (First Bool) TextDocumentSyncClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' TextDocumentSyncClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDidClose -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasSynchronization s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe TextDocumentSyncClientCapabilities)
L.synchronization ((Maybe TextDocumentSyncClientCapabilities
  -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe TextDocumentSyncClientCapabilities
    -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TextDocumentSyncClientCapabilities
 -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((TextDocumentSyncClientCapabilities
  -> Const (First Bool) TextDocumentSyncClientCapabilities)
 -> Maybe TextDocumentSyncClientCapabilities
 -> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentSyncClientCapabilities
    -> Const (First Bool) TextDocumentSyncClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe TextDocumentSyncClientCapabilities
-> Const (First Bool) (Maybe TextDocumentSyncClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> TextDocumentSyncClientCapabilities
-> Const (First Bool) TextDocumentSyncClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' TextDocumentSyncClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentCompletion -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe CompletionClientCapabilities
 -> Const (First Bool) (Maybe CompletionClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasCompletion s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe CompletionClientCapabilities)
L.completion ((Maybe CompletionClientCapabilities
  -> Const (First Bool) (Maybe CompletionClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe CompletionClientCapabilities
    -> Const (First Bool) (Maybe CompletionClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (CompletionClientCapabilities
 -> Const (First Bool) CompletionClientCapabilities)
-> Maybe CompletionClientCapabilities
-> Const (First Bool) (Maybe CompletionClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((CompletionClientCapabilities
  -> Const (First Bool) CompletionClientCapabilities)
 -> Maybe CompletionClientCapabilities
 -> Const (First Bool) (Maybe CompletionClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> CompletionClientCapabilities
    -> Const (First Bool) CompletionClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe CompletionClientCapabilities
-> Const (First Bool) (Maybe CompletionClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> CompletionClientCapabilities
-> Const (First Bool) CompletionClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' CompletionClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentHover -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe HoverClientCapabilities
 -> Const (First Bool) (Maybe HoverClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasHover s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe HoverClientCapabilities)
L.hover ((Maybe HoverClientCapabilities
  -> Const (First Bool) (Maybe HoverClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe HoverClientCapabilities
    -> Const (First Bool) (Maybe HoverClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (HoverClientCapabilities
 -> Const (First Bool) HoverClientCapabilities)
-> Maybe HoverClientCapabilities
-> Const (First Bool) (Maybe HoverClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((HoverClientCapabilities
  -> Const (First Bool) HoverClientCapabilities)
 -> Maybe HoverClientCapabilities
 -> Const (First Bool) (Maybe HoverClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> HoverClientCapabilities
    -> Const (First Bool) HoverClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe HoverClientCapabilities
-> Const (First Bool) (Maybe HoverClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> HoverClientCapabilities
-> Const (First Bool) HoverClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' HoverClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentSignatureHelp -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe SignatureHelpClientCapabilities
 -> Const (First Bool) (Maybe SignatureHelpClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasSignatureHelp s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe SignatureHelpClientCapabilities)
L.signatureHelp ((Maybe SignatureHelpClientCapabilities
  -> Const (First Bool) (Maybe SignatureHelpClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe SignatureHelpClientCapabilities
    -> Const (First Bool) (Maybe SignatureHelpClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (SignatureHelpClientCapabilities
 -> Const (First Bool) SignatureHelpClientCapabilities)
-> Maybe SignatureHelpClientCapabilities
-> Const (First Bool) (Maybe SignatureHelpClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((SignatureHelpClientCapabilities
  -> Const (First Bool) SignatureHelpClientCapabilities)
 -> Maybe SignatureHelpClientCapabilities
 -> Const (First Bool) (Maybe SignatureHelpClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> SignatureHelpClientCapabilities
    -> Const (First Bool) SignatureHelpClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe SignatureHelpClientCapabilities
-> Const (First Bool) (Maybe SignatureHelpClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> SignatureHelpClientCapabilities
-> Const (First Bool) SignatureHelpClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' SignatureHelpClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDeclaration -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DeclarationClientCapabilities
 -> Const (First Bool) (Maybe DeclarationClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDeclaration s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DeclarationClientCapabilities)
L.declaration ((Maybe DeclarationClientCapabilities
  -> Const (First Bool) (Maybe DeclarationClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DeclarationClientCapabilities
    -> Const (First Bool) (Maybe DeclarationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DeclarationClientCapabilities
 -> Const (First Bool) DeclarationClientCapabilities)
-> Maybe DeclarationClientCapabilities
-> Const (First Bool) (Maybe DeclarationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DeclarationClientCapabilities
  -> Const (First Bool) DeclarationClientCapabilities)
 -> Maybe DeclarationClientCapabilities
 -> Const (First Bool) (Maybe DeclarationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DeclarationClientCapabilities
    -> Const (First Bool) DeclarationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DeclarationClientCapabilities
-> Const (First Bool) (Maybe DeclarationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DeclarationClientCapabilities
-> Const (First Bool) DeclarationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DeclarationClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDefinition -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DefinitionClientCapabilities
 -> Const (First Bool) (Maybe DefinitionClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDefinition s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe DefinitionClientCapabilities)
L.definition ((Maybe DefinitionClientCapabilities
  -> Const (First Bool) (Maybe DefinitionClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DefinitionClientCapabilities
    -> Const (First Bool) (Maybe DefinitionClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DefinitionClientCapabilities
 -> Const (First Bool) DefinitionClientCapabilities)
-> Maybe DefinitionClientCapabilities
-> Const (First Bool) (Maybe DefinitionClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DefinitionClientCapabilities
  -> Const (First Bool) DefinitionClientCapabilities)
 -> Maybe DefinitionClientCapabilities
 -> Const (First Bool) (Maybe DefinitionClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DefinitionClientCapabilities
    -> Const (First Bool) DefinitionClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DefinitionClientCapabilities
-> Const (First Bool) (Maybe DefinitionClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DefinitionClientCapabilities
-> Const (First Bool) DefinitionClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DefinitionClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentTypeDefinition -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe TypeDefinitionClientCapabilities
 -> Const (First Bool) (Maybe TypeDefinitionClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasTypeDefinition s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe TypeDefinitionClientCapabilities)
L.typeDefinition ((Maybe TypeDefinitionClientCapabilities
  -> Const (First Bool) (Maybe TypeDefinitionClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe TypeDefinitionClientCapabilities
    -> Const (First Bool) (Maybe TypeDefinitionClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TypeDefinitionClientCapabilities
 -> Const (First Bool) TypeDefinitionClientCapabilities)
-> Maybe TypeDefinitionClientCapabilities
-> Const (First Bool) (Maybe TypeDefinitionClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((TypeDefinitionClientCapabilities
  -> Const (First Bool) TypeDefinitionClientCapabilities)
 -> Maybe TypeDefinitionClientCapabilities
 -> Const (First Bool) (Maybe TypeDefinitionClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> TypeDefinitionClientCapabilities
    -> Const (First Bool) TypeDefinitionClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe TypeDefinitionClientCapabilities
-> Const (First Bool) (Maybe TypeDefinitionClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> TypeDefinitionClientCapabilities
-> Const (First Bool) TypeDefinitionClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' TypeDefinitionClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentImplementation -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe ImplementationClientCapabilities
 -> Const (First Bool) (Maybe ImplementationClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasImplementation s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe ImplementationClientCapabilities)
L.implementation ((Maybe ImplementationClientCapabilities
  -> Const (First Bool) (Maybe ImplementationClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe ImplementationClientCapabilities
    -> Const (First Bool) (Maybe ImplementationClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ImplementationClientCapabilities
 -> Const (First Bool) ImplementationClientCapabilities)
-> Maybe ImplementationClientCapabilities
-> Const (First Bool) (Maybe ImplementationClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((ImplementationClientCapabilities
  -> Const (First Bool) ImplementationClientCapabilities)
 -> Maybe ImplementationClientCapabilities
 -> Const (First Bool) (Maybe ImplementationClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> ImplementationClientCapabilities
    -> Const (First Bool) ImplementationClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe ImplementationClientCapabilities
-> Const (First Bool) (Maybe ImplementationClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> ImplementationClientCapabilities
-> Const (First Bool) ImplementationClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' ImplementationClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentReferences -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe ReferenceClientCapabilities
 -> Const (First Bool) (Maybe ReferenceClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasReferences s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe ReferenceClientCapabilities)
L.references ((Maybe ReferenceClientCapabilities
  -> Const (First Bool) (Maybe ReferenceClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe ReferenceClientCapabilities
    -> Const (First Bool) (Maybe ReferenceClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ReferenceClientCapabilities
 -> Const (First Bool) ReferenceClientCapabilities)
-> Maybe ReferenceClientCapabilities
-> Const (First Bool) (Maybe ReferenceClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((ReferenceClientCapabilities
  -> Const (First Bool) ReferenceClientCapabilities)
 -> Maybe ReferenceClientCapabilities
 -> Const (First Bool) (Maybe ReferenceClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> ReferenceClientCapabilities
    -> Const (First Bool) ReferenceClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe ReferenceClientCapabilities
-> Const (First Bool) (Maybe ReferenceClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> ReferenceClientCapabilities
-> Const (First Bool) ReferenceClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' ReferenceClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDocumentHighlight -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentHighlightClientCapabilities
 -> Const (First Bool) (Maybe DocumentHighlightClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDocumentHighlight s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentHighlightClientCapabilities)
L.documentHighlight ((Maybe DocumentHighlightClientCapabilities
  -> Const (First Bool) (Maybe DocumentHighlightClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentHighlightClientCapabilities
    -> Const (First Bool) (Maybe DocumentHighlightClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentHighlightClientCapabilities
 -> Const (First Bool) DocumentHighlightClientCapabilities)
-> Maybe DocumentHighlightClientCapabilities
-> Const (First Bool) (Maybe DocumentHighlightClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentHighlightClientCapabilities
  -> Const (First Bool) DocumentHighlightClientCapabilities)
 -> Maybe DocumentHighlightClientCapabilities
 -> Const (First Bool) (Maybe DocumentHighlightClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentHighlightClientCapabilities
    -> Const (First Bool) DocumentHighlightClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentHighlightClientCapabilities
-> Const (First Bool) (Maybe DocumentHighlightClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentHighlightClientCapabilities
-> Const (First Bool) DocumentHighlightClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentHighlightClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDocumentSymbol -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentSymbolClientCapabilities
 -> Const (First Bool) (Maybe DocumentSymbolClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDocumentSymbol s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentSymbolClientCapabilities)
L.documentSymbol ((Maybe DocumentSymbolClientCapabilities
  -> Const (First Bool) (Maybe DocumentSymbolClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentSymbolClientCapabilities
    -> Const (First Bool) (Maybe DocumentSymbolClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentSymbolClientCapabilities
 -> Const (First Bool) DocumentSymbolClientCapabilities)
-> Maybe DocumentSymbolClientCapabilities
-> Const (First Bool) (Maybe DocumentSymbolClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentSymbolClientCapabilities
  -> Const (First Bool) DocumentSymbolClientCapabilities)
 -> Maybe DocumentSymbolClientCapabilities
 -> Const (First Bool) (Maybe DocumentSymbolClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentSymbolClientCapabilities
    -> Const (First Bool) DocumentSymbolClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentSymbolClientCapabilities
-> Const (First Bool) (Maybe DocumentSymbolClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentSymbolClientCapabilities
-> Const (First Bool) DocumentSymbolClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentSymbolClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentCodeAction -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe CodeActionClientCapabilities
 -> Const (First Bool) (Maybe CodeActionClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasCodeAction s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe CodeActionClientCapabilities)
L.codeAction ((Maybe CodeActionClientCapabilities
  -> Const (First Bool) (Maybe CodeActionClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe CodeActionClientCapabilities
    -> Const (First Bool) (Maybe CodeActionClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (CodeActionClientCapabilities
 -> Const (First Bool) CodeActionClientCapabilities)
-> Maybe CodeActionClientCapabilities
-> Const (First Bool) (Maybe CodeActionClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((CodeActionClientCapabilities
  -> Const (First Bool) CodeActionClientCapabilities)
 -> Maybe CodeActionClientCapabilities
 -> Const (First Bool) (Maybe CodeActionClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> CodeActionClientCapabilities
    -> Const (First Bool) CodeActionClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe CodeActionClientCapabilities
-> Const (First Bool) (Maybe CodeActionClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> CodeActionClientCapabilities
-> Const (First Bool) CodeActionClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' CodeActionClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentCodeLens -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe CodeLensClientCapabilities
 -> Const (First Bool) (Maybe CodeLensClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasCodeLens s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe CodeLensClientCapabilities)
L.codeLens ((Maybe CodeLensClientCapabilities
  -> Const (First Bool) (Maybe CodeLensClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe CodeLensClientCapabilities
    -> Const (First Bool) (Maybe CodeLensClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (CodeLensClientCapabilities
 -> Const (First Bool) CodeLensClientCapabilities)
-> Maybe CodeLensClientCapabilities
-> Const (First Bool) (Maybe CodeLensClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((CodeLensClientCapabilities
  -> Const (First Bool) CodeLensClientCapabilities)
 -> Maybe CodeLensClientCapabilities
 -> Const (First Bool) (Maybe CodeLensClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> CodeLensClientCapabilities
    -> Const (First Bool) CodeLensClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe CodeLensClientCapabilities
-> Const (First Bool) (Maybe CodeLensClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> CodeLensClientCapabilities
-> Const (First Bool) CodeLensClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' CodeLensClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDocumentLink -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentLinkClientCapabilities
 -> Const (First Bool) (Maybe DocumentLinkClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDocumentLink s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentLinkClientCapabilities)
L.documentLink ((Maybe DocumentLinkClientCapabilities
  -> Const (First Bool) (Maybe DocumentLinkClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentLinkClientCapabilities
    -> Const (First Bool) (Maybe DocumentLinkClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentLinkClientCapabilities
 -> Const (First Bool) DocumentLinkClientCapabilities)
-> Maybe DocumentLinkClientCapabilities
-> Const (First Bool) (Maybe DocumentLinkClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentLinkClientCapabilities
  -> Const (First Bool) DocumentLinkClientCapabilities)
 -> Maybe DocumentLinkClientCapabilities
 -> Const (First Bool) (Maybe DocumentLinkClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentLinkClientCapabilities
    -> Const (First Bool) DocumentLinkClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentLinkClientCapabilities
-> Const (First Bool) (Maybe DocumentLinkClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentLinkClientCapabilities
-> Const (First Bool) DocumentLinkClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentLinkClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDocumentColor -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentColorClientCapabilities
 -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasColorProvider s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentColorClientCapabilities)
L.colorProvider ((Maybe DocumentColorClientCapabilities
  -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentColorClientCapabilities
    -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentColorClientCapabilities
 -> Const (First Bool) DocumentColorClientCapabilities)
-> Maybe DocumentColorClientCapabilities
-> Const (First Bool) (Maybe DocumentColorClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentColorClientCapabilities
  -> Const (First Bool) DocumentColorClientCapabilities)
 -> Maybe DocumentColorClientCapabilities
 -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentColorClientCapabilities
    -> Const (First Bool) DocumentColorClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentColorClientCapabilities
-> Const (First Bool) (Maybe DocumentColorClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentColorClientCapabilities
-> Const (First Bool) DocumentColorClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentColorClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentColorPresentation -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentColorClientCapabilities
 -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasColorProvider s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentColorClientCapabilities)
L.colorProvider ((Maybe DocumentColorClientCapabilities
  -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentColorClientCapabilities
    -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentColorClientCapabilities
 -> Const (First Bool) DocumentColorClientCapabilities)
-> Maybe DocumentColorClientCapabilities
-> Const (First Bool) (Maybe DocumentColorClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentColorClientCapabilities
  -> Const (First Bool) DocumentColorClientCapabilities)
 -> Maybe DocumentColorClientCapabilities
 -> Const (First Bool) (Maybe DocumentColorClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentColorClientCapabilities
    -> Const (First Bool) DocumentColorClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentColorClientCapabilities
-> Const (First Bool) (Maybe DocumentColorClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentColorClientCapabilities
-> Const (First Bool) DocumentColorClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentColorClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentFormatting -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentFormattingClientCapabilities
 -> Const (First Bool) (Maybe DocumentFormattingClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasFormatting s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentFormattingClientCapabilities)
L.formatting ((Maybe DocumentFormattingClientCapabilities
  -> Const (First Bool) (Maybe DocumentFormattingClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentFormattingClientCapabilities
    -> Const (First Bool) (Maybe DocumentFormattingClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentFormattingClientCapabilities
 -> Const (First Bool) DocumentFormattingClientCapabilities)
-> Maybe DocumentFormattingClientCapabilities
-> Const (First Bool) (Maybe DocumentFormattingClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentFormattingClientCapabilities
  -> Const (First Bool) DocumentFormattingClientCapabilities)
 -> Maybe DocumentFormattingClientCapabilities
 -> Const (First Bool) (Maybe DocumentFormattingClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentFormattingClientCapabilities
    -> Const (First Bool) DocumentFormattingClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentFormattingClientCapabilities
-> Const (First Bool) (Maybe DocumentFormattingClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentFormattingClientCapabilities
-> Const (First Bool) DocumentFormattingClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentFormattingClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentRangeFormatting -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentRangeFormattingClientCapabilities
 -> Const
      (First Bool) (Maybe DocumentRangeFormattingClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasRangeFormatting s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentRangeFormattingClientCapabilities)
L.rangeFormatting ((Maybe DocumentRangeFormattingClientCapabilities
  -> Const
       (First Bool) (Maybe DocumentRangeFormattingClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentRangeFormattingClientCapabilities
    -> Const
         (First Bool) (Maybe DocumentRangeFormattingClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentRangeFormattingClientCapabilities
 -> Const (First Bool) DocumentRangeFormattingClientCapabilities)
-> Maybe DocumentRangeFormattingClientCapabilities
-> Const
     (First Bool) (Maybe DocumentRangeFormattingClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentRangeFormattingClientCapabilities
  -> Const (First Bool) DocumentRangeFormattingClientCapabilities)
 -> Maybe DocumentRangeFormattingClientCapabilities
 -> Const
      (First Bool) (Maybe DocumentRangeFormattingClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentRangeFormattingClientCapabilities
    -> Const (First Bool) DocumentRangeFormattingClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentRangeFormattingClientCapabilities
-> Const
     (First Bool) (Maybe DocumentRangeFormattingClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentRangeFormattingClientCapabilities
-> Const (First Bool) DocumentRangeFormattingClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentRangeFormattingClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentOnTypeFormatting -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DocumentOnTypeFormattingClientCapabilities
 -> Const
      (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasOnTypeFormatting s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe DocumentOnTypeFormattingClientCapabilities)
L.onTypeFormatting ((Maybe DocumentOnTypeFormattingClientCapabilities
  -> Const
       (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DocumentOnTypeFormattingClientCapabilities
    -> Const
         (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DocumentOnTypeFormattingClientCapabilities
 -> Const (First Bool) DocumentOnTypeFormattingClientCapabilities)
-> Maybe DocumentOnTypeFormattingClientCapabilities
-> Const
     (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DocumentOnTypeFormattingClientCapabilities
  -> Const (First Bool) DocumentOnTypeFormattingClientCapabilities)
 -> Maybe DocumentOnTypeFormattingClientCapabilities
 -> Const
      (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DocumentOnTypeFormattingClientCapabilities
    -> Const (First Bool) DocumentOnTypeFormattingClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DocumentOnTypeFormattingClientCapabilities
-> Const
     (First Bool) (Maybe DocumentOnTypeFormattingClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DocumentOnTypeFormattingClientCapabilities
-> Const (First Bool) DocumentOnTypeFormattingClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DocumentOnTypeFormattingClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentRename -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe RenameClientCapabilities
 -> Const (First Bool) (Maybe RenameClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasRename s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe RenameClientCapabilities)
L.rename ((Maybe RenameClientCapabilities
  -> Const (First Bool) (Maybe RenameClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe RenameClientCapabilities
    -> Const (First Bool) (Maybe RenameClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (RenameClientCapabilities
 -> Const (First Bool) RenameClientCapabilities)
-> Maybe RenameClientCapabilities
-> Const (First Bool) (Maybe RenameClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((RenameClientCapabilities
  -> Const (First Bool) RenameClientCapabilities)
 -> Maybe RenameClientCapabilities
 -> Const (First Bool) (Maybe RenameClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> RenameClientCapabilities
    -> Const (First Bool) RenameClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe RenameClientCapabilities
-> Const (First Bool) (Maybe RenameClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> RenameClientCapabilities
-> Const (First Bool) RenameClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' RenameClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentFoldingRange -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe FoldingRangeClientCapabilities
 -> Const (First Bool) (Maybe FoldingRangeClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasFoldingRange s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe FoldingRangeClientCapabilities)
L.foldingRange ((Maybe FoldingRangeClientCapabilities
  -> Const (First Bool) (Maybe FoldingRangeClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe FoldingRangeClientCapabilities
    -> Const (First Bool) (Maybe FoldingRangeClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (FoldingRangeClientCapabilities
 -> Const (First Bool) FoldingRangeClientCapabilities)
-> Maybe FoldingRangeClientCapabilities
-> Const (First Bool) (Maybe FoldingRangeClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((FoldingRangeClientCapabilities
  -> Const (First Bool) FoldingRangeClientCapabilities)
 -> Maybe FoldingRangeClientCapabilities
 -> Const (First Bool) (Maybe FoldingRangeClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> FoldingRangeClientCapabilities
    -> Const (First Bool) FoldingRangeClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe FoldingRangeClientCapabilities
-> Const (First Bool) (Maybe FoldingRangeClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> FoldingRangeClientCapabilities
-> Const (First Bool) FoldingRangeClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' FoldingRangeClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentSelectionRange -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe SelectionRangeClientCapabilities
 -> Const (First Bool) (Maybe SelectionRangeClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasSelectionRange s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe SelectionRangeClientCapabilities)
L.selectionRange ((Maybe SelectionRangeClientCapabilities
  -> Const (First Bool) (Maybe SelectionRangeClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe SelectionRangeClientCapabilities
    -> Const (First Bool) (Maybe SelectionRangeClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (SelectionRangeClientCapabilities
 -> Const (First Bool) SelectionRangeClientCapabilities)
-> Maybe SelectionRangeClientCapabilities
-> Const (First Bool) (Maybe SelectionRangeClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((SelectionRangeClientCapabilities
  -> Const (First Bool) SelectionRangeClientCapabilities)
 -> Maybe SelectionRangeClientCapabilities
 -> Const (First Bool) (Maybe SelectionRangeClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> SelectionRangeClientCapabilities
    -> Const (First Bool) SelectionRangeClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe SelectionRangeClientCapabilities
-> Const (First Bool) (Maybe SelectionRangeClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> SelectionRangeClientCapabilities
-> Const (First Bool) SelectionRangeClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' SelectionRangeClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentLinkedEditingRange -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe LinkedEditingRangeClientCapabilities
 -> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasLinkedEditingRange s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe LinkedEditingRangeClientCapabilities)
L.linkedEditingRange ((Maybe LinkedEditingRangeClientCapabilities
  -> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe LinkedEditingRangeClientCapabilities
    -> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (LinkedEditingRangeClientCapabilities
 -> Const (First Bool) LinkedEditingRangeClientCapabilities)
-> Maybe LinkedEditingRangeClientCapabilities
-> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((LinkedEditingRangeClientCapabilities
  -> Const (First Bool) LinkedEditingRangeClientCapabilities)
 -> Maybe LinkedEditingRangeClientCapabilities
 -> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> LinkedEditingRangeClientCapabilities
    -> Const (First Bool) LinkedEditingRangeClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe LinkedEditingRangeClientCapabilities
-> Const (First Bool) (Maybe LinkedEditingRangeClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> LinkedEditingRangeClientCapabilities
-> Const (First Bool) LinkedEditingRangeClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' LinkedEditingRangeClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentPrepareCallHierarchy -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe CallHierarchyClientCapabilities
 -> Const (First Bool) (Maybe CallHierarchyClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasCallHierarchy s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe CallHierarchyClientCapabilities)
L.callHierarchy ((Maybe CallHierarchyClientCapabilities
  -> Const (First Bool) (Maybe CallHierarchyClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe CallHierarchyClientCapabilities
    -> Const (First Bool) (Maybe CallHierarchyClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (CallHierarchyClientCapabilities
 -> Const (First Bool) CallHierarchyClientCapabilities)
-> Maybe CallHierarchyClientCapabilities
-> Const (First Bool) (Maybe CallHierarchyClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((CallHierarchyClientCapabilities
  -> Const (First Bool) CallHierarchyClientCapabilities)
 -> Maybe CallHierarchyClientCapabilities
 -> Const (First Bool) (Maybe CallHierarchyClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> CallHierarchyClientCapabilities
    -> Const (First Bool) CallHierarchyClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe CallHierarchyClientCapabilities
-> Const (First Bool) (Maybe CallHierarchyClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> CallHierarchyClientCapabilities
-> Const (First Bool) CallHierarchyClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' CallHierarchyClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentInlayHint -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe InlayHintClientCapabilities
 -> Const (First Bool) (Maybe InlayHintClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasInlayHint s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe InlayHintClientCapabilities)
L.inlayHint ((Maybe InlayHintClientCapabilities
  -> Const (First Bool) (Maybe InlayHintClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe InlayHintClientCapabilities
    -> Const (First Bool) (Maybe InlayHintClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (InlayHintClientCapabilities
 -> Const (First Bool) InlayHintClientCapabilities)
-> Maybe InlayHintClientCapabilities
-> Const (First Bool) (Maybe InlayHintClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((InlayHintClientCapabilities
  -> Const (First Bool) InlayHintClientCapabilities)
 -> Maybe InlayHintClientCapabilities
 -> Const (First Bool) (Maybe InlayHintClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> InlayHintClientCapabilities
    -> Const (First Bool) InlayHintClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe InlayHintClientCapabilities
-> Const (First Bool) (Maybe InlayHintClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> InlayHintClientCapabilities
-> Const (First Bool) InlayHintClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' InlayHintClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentInlineValue -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe InlineValueClientCapabilities
 -> Const (First Bool) (Maybe InlineValueClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasInlineValue s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe InlineValueClientCapabilities)
L.inlineValue ((Maybe InlineValueClientCapabilities
  -> Const (First Bool) (Maybe InlineValueClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe InlineValueClientCapabilities
    -> Const (First Bool) (Maybe InlineValueClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (InlineValueClientCapabilities
 -> Const (First Bool) InlineValueClientCapabilities)
-> Maybe InlineValueClientCapabilities
-> Const (First Bool) (Maybe InlineValueClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((InlineValueClientCapabilities
  -> Const (First Bool) InlineValueClientCapabilities)
 -> Maybe InlineValueClientCapabilities
 -> Const (First Bool) (Maybe InlineValueClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> InlineValueClientCapabilities
    -> Const (First Bool) InlineValueClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe InlineValueClientCapabilities
-> Const (First Bool) (Maybe InlineValueClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> InlineValueClientCapabilities
-> Const (First Bool) InlineValueClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' InlineValueClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentMoniker -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe MonikerClientCapabilities
 -> Const (First Bool) (Maybe MonikerClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasMoniker s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe MonikerClientCapabilities)
L.moniker ((Maybe MonikerClientCapabilities
  -> Const (First Bool) (Maybe MonikerClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe MonikerClientCapabilities
    -> Const (First Bool) (Maybe MonikerClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (MonikerClientCapabilities
 -> Const (First Bool) MonikerClientCapabilities)
-> Maybe MonikerClientCapabilities
-> Const (First Bool) (Maybe MonikerClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((MonikerClientCapabilities
  -> Const (First Bool) MonikerClientCapabilities)
 -> Maybe MonikerClientCapabilities
 -> Const (First Bool) (Maybe MonikerClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> MonikerClientCapabilities
    -> Const (First Bool) MonikerClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe MonikerClientCapabilities
-> Const (First Bool) (Maybe MonikerClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> MonikerClientCapabilities
-> Const (First Bool) MonikerClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' MonikerClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentPrepareTypeHierarchy -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe TypeHierarchyClientCapabilities
 -> Const (First Bool) (Maybe TypeHierarchyClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasTypeHierarchy s a => Lens' s a
Lens'
  TextDocumentClientCapabilities
  (Maybe TypeHierarchyClientCapabilities)
L.typeHierarchy ((Maybe TypeHierarchyClientCapabilities
  -> Const (First Bool) (Maybe TypeHierarchyClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe TypeHierarchyClientCapabilities
    -> Const (First Bool) (Maybe TypeHierarchyClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TypeHierarchyClientCapabilities
 -> Const (First Bool) TypeHierarchyClientCapabilities)
-> Maybe TypeHierarchyClientCapabilities
-> Const (First Bool) (Maybe TypeHierarchyClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((TypeHierarchyClientCapabilities
  -> Const (First Bool) TypeHierarchyClientCapabilities)
 -> Maybe TypeHierarchyClientCapabilities
 -> Const (First Bool) (Maybe TypeHierarchyClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> TypeHierarchyClientCapabilities
    -> Const (First Bool) TypeHierarchyClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe TypeHierarchyClientCapabilities
-> Const (First Bool) (Maybe TypeHierarchyClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> TypeHierarchyClientCapabilities
-> Const (First Bool) TypeHierarchyClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' TypeHierarchyClientCapabilities Bool
dyn
  SMethod m
SMethod_TextDocumentDiagnostic -> ClientCapabilities
caps ClientCapabilities
-> Getting (First Bool) ClientCapabilities Bool -> Maybe Bool
forall s a. s -> Getting (First a) s a -> Maybe a
^? (TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ClientCapabilities -> Const (First Bool) ClientCapabilities
Traversal' ClientCapabilities TextDocumentClientCapabilities
td ((TextDocumentClientCapabilities
  -> Const (First Bool) TextDocumentClientCapabilities)
 -> ClientCapabilities -> Const (First Bool) ClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> TextDocumentClientCapabilities
    -> Const (First Bool) TextDocumentClientCapabilities)
-> Getting (First Bool) ClientCapabilities Bool
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Maybe DiagnosticClientCapabilities
 -> Const (First Bool) (Maybe DiagnosticClientCapabilities))
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall s a. HasDiagnostic s a => Lens' s a
Lens'
  TextDocumentClientCapabilities (Maybe DiagnosticClientCapabilities)
L.diagnostic ((Maybe DiagnosticClientCapabilities
  -> Const (First Bool) (Maybe DiagnosticClientCapabilities))
 -> TextDocumentClientCapabilities
 -> Const (First Bool) TextDocumentClientCapabilities)
-> ((Bool -> Const (First Bool) Bool)
    -> Maybe DiagnosticClientCapabilities
    -> Const (First Bool) (Maybe DiagnosticClientCapabilities))
-> (Bool -> Const (First Bool) Bool)
-> TextDocumentClientCapabilities
-> Const (First Bool) TextDocumentClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (DiagnosticClientCapabilities
 -> Const (First Bool) DiagnosticClientCapabilities)
-> Maybe DiagnosticClientCapabilities
-> Const (First Bool) (Maybe DiagnosticClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just ((DiagnosticClientCapabilities
  -> Const (First Bool) DiagnosticClientCapabilities)
 -> Maybe DiagnosticClientCapabilities
 -> Const (First Bool) (Maybe DiagnosticClientCapabilities))
-> ((Bool -> Const (First Bool) Bool)
    -> DiagnosticClientCapabilities
    -> Const (First Bool) DiagnosticClientCapabilities)
-> (Bool -> Const (First Bool) Bool)
-> Maybe DiagnosticClientCapabilities
-> Const (First Bool) (Maybe DiagnosticClientCapabilities)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> Const (First Bool) Bool)
-> DiagnosticClientCapabilities
-> Const (First Bool) DiagnosticClientCapabilities
forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
Traversal' DiagnosticClientCapabilities Bool
dyn
  -- semantic tokens is messed up due to it having you register with an otherwise non-existent method
  -- SMethod_TextDocumentSemanticTokens       -> capDyn $ clientCaps ^? L.textDocument . _Just . L.semanticTokens . _Just
  -- Notebook document methods alway support dynamic registration, it seems?
  SMethod m
_ -> Bool -> Maybe Bool
forall a. a -> Maybe a
Just Bool
False
 where
  td :: Traversal' ClientCapabilities TextDocumentClientCapabilities
  td :: Traversal' ClientCapabilities TextDocumentClientCapabilities
td = (Maybe TextDocumentClientCapabilities
 -> f (Maybe TextDocumentClientCapabilities))
-> ClientCapabilities -> f ClientCapabilities
forall s a. HasTextDocument s a => Lens' s a
Lens' ClientCapabilities (Maybe TextDocumentClientCapabilities)
L.textDocument ((Maybe TextDocumentClientCapabilities
  -> f (Maybe TextDocumentClientCapabilities))
 -> ClientCapabilities -> f ClientCapabilities)
-> ((TextDocumentClientCapabilities
     -> f TextDocumentClientCapabilities)
    -> Maybe TextDocumentClientCapabilities
    -> f (Maybe TextDocumentClientCapabilities))
-> (TextDocumentClientCapabilities
    -> f TextDocumentClientCapabilities)
-> ClientCapabilities
-> f ClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (TextDocumentClientCapabilities
 -> f TextDocumentClientCapabilities)
-> Maybe TextDocumentClientCapabilities
-> f (Maybe TextDocumentClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just

  ws :: Traversal' ClientCapabilities WorkspaceClientCapabilities
  ws :: Traversal' ClientCapabilities WorkspaceClientCapabilities
ws = (Maybe WorkspaceClientCapabilities
 -> f (Maybe WorkspaceClientCapabilities))
-> ClientCapabilities -> f ClientCapabilities
forall s a. HasWorkspace s a => Lens' s a
Lens' ClientCapabilities (Maybe WorkspaceClientCapabilities)
L.workspace ((Maybe WorkspaceClientCapabilities
  -> f (Maybe WorkspaceClientCapabilities))
 -> ClientCapabilities -> f ClientCapabilities)
-> ((WorkspaceClientCapabilities -> f WorkspaceClientCapabilities)
    -> Maybe WorkspaceClientCapabilities
    -> f (Maybe WorkspaceClientCapabilities))
-> (WorkspaceClientCapabilities -> f WorkspaceClientCapabilities)
-> ClientCapabilities
-> f ClientCapabilities
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (WorkspaceClientCapabilities -> f WorkspaceClientCapabilities)
-> Maybe WorkspaceClientCapabilities
-> f (Maybe WorkspaceClientCapabilities)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just

  dyn :: L.HasDynamicRegistration a (Maybe Bool) => Traversal' a Bool
  dyn :: forall a.
HasDynamicRegistration a (Maybe Bool) =>
Traversal' a Bool
dyn = (Maybe Bool -> f (Maybe Bool)) -> a -> f a
forall s a. HasDynamicRegistration s a => Lens' s a
Lens' a (Maybe Bool)
L.dynamicRegistration ((Maybe Bool -> f (Maybe Bool)) -> a -> f a)
-> ((Bool -> f Bool) -> Maybe Bool -> f (Maybe Bool))
-> (Bool -> f Bool)
-> a
-> f a
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Bool -> f Bool) -> Maybe Bool -> f (Maybe Bool)
forall a b (p :: * -> * -> *) (f :: * -> *).
(Choice p, Applicative f) =>
p a (f b) -> p (Maybe a) (f (Maybe b))
_Just