Make ClientCapabilities a mandatory parameter
[lsp-test.git] / src / Language / Haskell / LSP / Test / Capabilities.hs
1 module Language.Haskell.LSP.Test.Capabilities where
2 import Language.Haskell.LSP.Types
3 import Language.Haskell.LSP.Types.Capabilities
4
5 -- | Capabilities for full conformance to the LSP specification.
6 -- The whole shebang.
7 fullCaps :: ClientCapabilities
8 fullCaps = ClientCapabilities (Just w) (Just td) Nothing
9   where
10     w = WorkspaceClientCapabilities
11           (Just True)
12           (Just (WorkspaceEditClientCapabilities (Just True)))
13           (Just (DidChangeConfigurationClientCapabilities (Just True)))
14           (Just (DidChangeWatchedFilesClientCapabilities (Just True)))
15           (Just (SymbolClientCapabilities (Just True)))
16           (Just (ExecuteClientCapabilities (Just True)))
17     td = TextDocumentClientCapabilities
18           (Just sync)
19           (Just (CompletionClientCapabilities 
20                   (Just True)
21                   (Just (CompletionItemClientCapabilities (Just True)))))
22           (Just (HoverClientCapabilities (Just True)))
23           (Just (SignatureHelpClientCapabilities (Just True)))
24           (Just (ReferencesClientCapabilities (Just True)))
25           (Just (DocumentHighlightClientCapabilities (Just True)))
26           (Just (DocumentSymbolClientCapabilities (Just True)))
27           (Just (FormattingClientCapabilities (Just True)))
28           (Just (RangeFormattingClientCapabilities (Just True)))
29           (Just (OnTypeFormattingClientCapabilities (Just True)))
30           (Just (DefinitionClientCapabilities (Just True)))
31           (Just codeAction)
32           (Just (CodeLensClientCapabilities (Just True)))
33           (Just (DocumentLinkClientCapabilities (Just True)))
34           (Just (RenameClientCapabilities (Just True)))
35     sync = SynchronizationTextDocumentClientCapabilities
36             (Just True)
37             (Just True)
38             (Just True)
39             (Just True)
40     codeAction = CodeActionClientCapabilities
41                   (Just True)
42                   (Just (CodeActionLiteralSupport kinds))
43     kinds = CodeActionKindValueSet
44               (List [ CodeActionQuickFix
45                     , CodeActionRefactor
46                     , CodeActionRefactorExtract
47                     , CodeActionRefactorInline
48                     , CodeActionRefactorRewrite
49                     , CodeActionSource
50                     , CodeActionSourceOrganizeImports
51                     ])