0 | module Language.LSP.Message.Initialize
3 | import Language.LSP.Message.ClientCapabilities
4 | import Language.LSP.Message.Derive
5 | import Language.LSP.Message.Progress
6 | import Language.LSP.Message.ServerCapabilities
7 | import Language.LSP.Message.Trace
8 | import Language.LSP.Message.URI
9 | import Language.LSP.Message.Utils
10 | import Language.LSP.Message.Workspace
11 | import Language.Reflection
13 | %language ElabReflection
16 | namespace InitializeParams
19 | record ClientInfo where
21 | version : Maybe String
22 | %runElab deriveJSON defaultOpts `{ClientInfo
}
26 | record InitializeParams where
27 | constructor MkInitializeParams
28 | processId : OneOf [Integer, Null]
29 | clientInfo : Maybe ClientInfo
30 | locale : Maybe String
31 | rootPath : Maybe (OneOf [String, Null])
32 | rootUri : OneOf [URI, Null]
33 | initializationOptions : Maybe JSON
34 | capabilities : ClientCapabilities
36 | workspaceFolders : Maybe (OneOf [List WorkspaceFolder, Null])
37 | workDoneToken : Maybe ProgressToken
38 | %runElab deriveJSON defaultOpts `{InitializeParams
}
42 | record InitializeResult where
43 | constructor MkInitializeResult
44 | capabilities : ServerCapabilities
45 | serverInfo : Maybe ServerInfo
46 | %runElab deriveJSON defaultOpts `{InitializeResult
}
50 | record InitializeError where
51 | constructor MkInitializeError
53 | %runElab deriveJSON defaultOpts `{InitializeError
}
57 | record InitializedParams where
58 | constructor MkInitializedParams
59 | %runElab deriveJSON defaultOpts `{InitializedParams
}