packages feed

lsp-types 2.1.0.0 → 2.1.1.0

raw patch · 307 files changed

+1119/−1267 lines, 307 filesdep +generic-arbitrarydep −unordered-containersdep ~Diffdep ~aesondep ~base

Dependencies added: generic-arbitrary

Dependencies removed: unordered-containers

Dependency ranges changed: Diff, aeson, base, binary, containers, data-default, deepseq, dlist, exceptions, file-embed, filepath, hashable, indexed-traversable, indexed-traversable-instances, lens, lens-aeson, mod, mtl, network-uri, prettyprinter, row-types, safe, some, template-haskell, text

Files

ChangeLog.md view
@@ -1,31 +1,37 @@ # Revision history for lsp-types -## 2.1.0.0+## 2.1.1.0 -- 2024-02-24 +- Require aeson 2+- Accept `null` in place of a missing field, a common mistake in spec compliance.+- Arbitrary instances for everything now exist and are exported via the new `lsp-types-quickcheck` library++## 2.1.0.0 -- 2023-11-13+ - Add `dynamicRegistrationSupported` to `Capabilities`. - Fully update `fullCaps` for recent spec versions. - Support GHC 9.8, drop checked support for GHC 8.10 -## 2.0.2.0+## 2.0.2.0 -- 2023-08-24 -- Add `Language.LSP.Protocol.Utils.Misc.prettyJSON :: Value -> Doc ann` for prettyprinting JSON, +- Add `Language.LSP.Protocol.Utils.Misc.prettyJSON :: Value -> Doc ann` for prettyprinting JSON,   and `ViaJSON` as a deriving-via newtype wrapper for it. - Generate `Pretty` instances for all LSP types using `ViaJSON`. -## 2.0.1.1+## 2.0.1.1 -- 2023-08-08  * Fix parsing of notifications with missing params -## 2.0.1.0+## 2.0.1.0 -- 2023-07-14  * Removed deprecation pragmas from fields, as these cannot currently be avoided. * Added `isOptionalMethod`, that checks whether a method is optional according to the spec. -## 2.0.0.1+## 2.0.0.1 -- 2023-06-16  * Fixed missing `extra-source-files` for `metamodel.json`. -## 2.0.0.0+## 2.0.0.0 -- 2023-06-14  * Breaking change: major restructure to generate types and methods from the LSP metamodel.     * Full support for version 3.17 of the LSP specification, many accuracy fixes@@ -36,23 +42,27 @@     * Three top level modules: `Types` (main protocol types), `Message` (messages and methods), `Capabilities` (capabilities) * New typeclasses for handling LSP enumerations: `LspEnum` and `LspOpenEnum` -## 1.6.0.0+## 1.6.0.1 -- 2023-12-02 +* Add `LANGUAGE DuplicateRecordFields` to facilitate building with GHC 9.8++## 1.6.0.0 -- 2022-09-13+ * Add `isSubRangeOf` and `positionInRange` helper functions * Add `ServerCancelled`, `RequestFailed` and `ErrorCodeCustom` server error types * Fix "workspace/semanticTokens/refresh" to be a server method instead of a client method * Use a packed representation for `NormalizedFilePath` * Add conversions from `OsPath` to `NormalizedFilePath` in `Language.LSP.Types.Uri.OsPath` when using new enough `filepath`- -## 1.5.0.0 +## 1.5.0.0 -- 2022-06-20+ * VFS module moved from `lsp-types` to `lsp`, as it relates to the actual implementation of a LSP server. -## 1.4.0.1+## 1.4.0.1 -- 2022-01-20  * Fix result type of selection range requests. -## 1.4.0.0+## 1.4.0.0 -- 2021-12-28  * Aeson 2 compatibility (#360) (@michaelpj) * Reduced dependency footprint (#383, #384) (@Bodigrim)@@ -62,15 +72,15 @@ * Fix the Semigroup instance for MarkupContent (#361) (@michaelpj) * Various improvements to spec conformance (@michaelpj) -## 1.3.0.1+## 1.3.0.1 -- 2021-08-06  * Rollback NFP interning (#344) (@pepeiborra) -## 1.3.0.0+## 1.3.0.0 -- 2021-07-31  * Intern NormalizedFilePaths (#340) (@pepeiborra) -## 1.2.0.1+## 1.2.0.1 -- unpublished  * Add compatibility with GHC 9.2 (#345) (@fendor) * Fix missing lenses (@michaelpj)@@ -80,7 +90,7 @@ * Do not crash on workspace/didChangeConfiguration (#321) (@strager) * Improve error messages on JSON decode failures (#320) (@strager) -## 1.2.0.0+## 1.2.0.0 -- 2021-03-28  * Prevent crashing when optional fields are missing (@anka-213) * Use StrictData (@wz1000)@@ -97,7 +107,7 @@ * Support change annotations (#302) (@michaelpj) * Add some more missing lenses (#307) (@michaelpj) -## 1.1.0.0+## 1.1.0.0 -- 2021-02-14  * Fix prepareRename reponse and prepareProvider (@kirelagin) * Fix deriving instance of MonadUnliftIO (@banacorn)@@ -130,7 +140,7 @@ * Use Text over String in more places (@wz1000) * Add missing lenses (@wz1000, @bubba) -## 1.0.0.0+## 1.0.0.0 -- 2020-10-15  1.0.0.0 is a major rework with both internal and external facing changes, and will require manual migration.@@ -229,10 +239,10 @@ `LanguageContextEnv` needed to run an `LspT`, as well as anything else your monad needs. ```haskell-type +type ServerDefinition { ... , doInitialize = \env _req -> pure $ Right env-, interpretHandler = \env -> Iso +, interpretHandler = \env -> Iso    (runLspT env) -- how to convert from IO ~> m    liftIO        -- how to convert from m ~> IO }@@ -248,7 +258,7 @@ 5. Remove any storage/use of `LspFuncs` and instead call the corresponding    functions directly from your monad instead of `IO` -## 0.23.0.0+## 0.23.0.0 -- 2020-10-05  * Add runWith for transporots other than stdio (@paulyoung) * Fix race condition in event captures (@bgamari)@@ -259,12 +269,12 @@   NormalizedFilePath (@cocreature) * Fix ordering of TH splices (@fendor) -## 0.22.0.0+## 0.22.0.0 -- 2020-05-04  * ResponseMessage results are now an Either type (@greenhat) * Support for GHC 8.10.1 -## 0.21.0.0+## 0.21.0.0 -- 2020-03-21  * Stop getCompletionPrefix from crashing if beforePos is empty * Add DidChangeWatchedFilesRegistrationOptions@@ -274,7 +284,7 @@ * Correctly fix the problem with '$/' notifications * Add azure ci -## 0.20.0.0+## 0.20.0.0 -- 2020-02-04T  * Force utf8 encoding when writing vfs temp files * Don't log errors for '$/' notifications (@jinwoo)@@ -334,7 +344,7 @@  * Add types for `window/progress` notifications. -## 0.8.3.0+## 0.8.3.0 -- unpublished  * Add `MarkupContent` to `HoverResponse`, and (some) json roundtrip tests. @@ -387,11 +397,11 @@ * CodeAction support as per v3.8 of the specification, by @Bubba * Update VersionedTextDocumentIdentifier to match specification, by @Bubba. -## 0.3.0.0+## 0.3.0.0 -- unpublished  * Handle TextDocumentSync fallbacks with new TDS type. -## 0.2.3.0+## 0.2.3.0 -- unpublished  * GHC 8.4.3 support * Introduce additional error codes as per the LSP spec. By @Bubba
− generated/Language/LSP/Protocol/Internal/Lens.hs
@@ -1,637 +0,0 @@-{- ORMOLU_DISABLE -}-{- HLINT ignore -}--- THIS IS A GENERATED FILE, DO NOT EDIT-{-# LANGUAGE TemplateHaskell #-}-{-# OPTIONS_GHC -Wno-unused-imports #-}-{-# OPTIONS_GHC -Wno-unused-matches #-}-{-# OPTIONS_GHC -Wno-deprecations #-}-module Language.LSP.Protocol.Internal.Lens where--import qualified Control.Lens.TH-import qualified Language.LSP.Protocol.Internal.Types.AnnotatedTextEdit-import qualified Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditParams-import qualified Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditResult-import qualified Language.LSP.Protocol.Internal.Types.BaseSymbolInformation-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCall-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCallsParams-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyItem-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyOptions-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCall-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCallsParams-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyPrepareParams-import qualified Language.LSP.Protocol.Internal.Types.CallHierarchyRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.CancelParams-import qualified Language.LSP.Protocol.Internal.Types.ChangeAnnotation-import qualified Language.LSP.Protocol.Internal.Types.ClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.CodeAction-import qualified Language.LSP.Protocol.Internal.Types.CodeActionClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.CodeActionContext-import qualified Language.LSP.Protocol.Internal.Types.CodeActionOptions-import qualified Language.LSP.Protocol.Internal.Types.CodeActionParams-import qualified Language.LSP.Protocol.Internal.Types.CodeActionRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.CodeDescription-import qualified Language.LSP.Protocol.Internal.Types.CodeLens-import qualified Language.LSP.Protocol.Internal.Types.CodeLensClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.CodeLensOptions-import qualified Language.LSP.Protocol.Internal.Types.CodeLensParams-import qualified Language.LSP.Protocol.Internal.Types.CodeLensRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.CodeLensWorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.Color-import qualified Language.LSP.Protocol.Internal.Types.ColorInformation-import qualified Language.LSP.Protocol.Internal.Types.ColorPresentation-import qualified Language.LSP.Protocol.Internal.Types.ColorPresentationParams-import qualified Language.LSP.Protocol.Internal.Types.Command-import qualified Language.LSP.Protocol.Internal.Types.CompletionClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.CompletionContext-import qualified Language.LSP.Protocol.Internal.Types.CompletionItem-import qualified Language.LSP.Protocol.Internal.Types.CompletionItemLabelDetails-import qualified Language.LSP.Protocol.Internal.Types.CompletionList-import qualified Language.LSP.Protocol.Internal.Types.CompletionOptions-import qualified Language.LSP.Protocol.Internal.Types.CompletionParams-import qualified Language.LSP.Protocol.Internal.Types.CompletionRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.ConfigurationItem-import qualified Language.LSP.Protocol.Internal.Types.ConfigurationParams-import qualified Language.LSP.Protocol.Internal.Types.CreateFile-import qualified Language.LSP.Protocol.Internal.Types.CreateFileOptions-import qualified Language.LSP.Protocol.Internal.Types.CreateFilesParams-import qualified Language.LSP.Protocol.Internal.Types.DeclarationClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DeclarationOptions-import qualified Language.LSP.Protocol.Internal.Types.DeclarationParams-import qualified Language.LSP.Protocol.Internal.Types.DeclarationRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DefinitionClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DefinitionOptions-import qualified Language.LSP.Protocol.Internal.Types.DefinitionParams-import qualified Language.LSP.Protocol.Internal.Types.DefinitionRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DeleteFile-import qualified Language.LSP.Protocol.Internal.Types.DeleteFileOptions-import qualified Language.LSP.Protocol.Internal.Types.DeleteFilesParams-import qualified Language.LSP.Protocol.Internal.Types.Diagnostic-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticOptions-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticRelatedInformation-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticServerCancellationData-import qualified Language.LSP.Protocol.Internal.Types.DiagnosticWorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DidChangeConfigurationClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DidChangeConfigurationParams-import qualified Language.LSP.Protocol.Internal.Types.DidChangeConfigurationRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DidChangeNotebookDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidChangeTextDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesParams-import qualified Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DidChangeWorkspaceFoldersParams-import qualified Language.LSP.Protocol.Internal.Types.DidCloseNotebookDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidCloseTextDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidOpenNotebookDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidOpenTextDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidSaveNotebookDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DidSaveTextDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentColorClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentColorOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentColorParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentColorRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentDiagnosticParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportPartialResult-import qualified Language.LSP.Protocol.Internal.Types.DocumentFormattingClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentFormattingOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentFormattingParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentFormattingRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentHighlight-import qualified Language.LSP.Protocol.Internal.Types.DocumentHighlightClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentHighlightOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentHighlightParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentHighlightRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentLink-import qualified Language.LSP.Protocol.Internal.Types.DocumentLinkClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentLinkOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentLinkParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentLinkRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentSymbol-import qualified Language.LSP.Protocol.Internal.Types.DocumentSymbolClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.DocumentSymbolOptions-import qualified Language.LSP.Protocol.Internal.Types.DocumentSymbolParams-import qualified Language.LSP.Protocol.Internal.Types.DocumentSymbolRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.ExecuteCommandClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ExecuteCommandOptions-import qualified Language.LSP.Protocol.Internal.Types.ExecuteCommandParams-import qualified Language.LSP.Protocol.Internal.Types.ExecuteCommandRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.ExecutionSummary-import qualified Language.LSP.Protocol.Internal.Types.FileCreate-import qualified Language.LSP.Protocol.Internal.Types.FileDelete-import qualified Language.LSP.Protocol.Internal.Types.FileEvent-import qualified Language.LSP.Protocol.Internal.Types.FileOperationClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.FileOperationFilter-import qualified Language.LSP.Protocol.Internal.Types.FileOperationOptions-import qualified Language.LSP.Protocol.Internal.Types.FileOperationPattern-import qualified Language.LSP.Protocol.Internal.Types.FileOperationPatternOptions-import qualified Language.LSP.Protocol.Internal.Types.FileOperationRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.FileRename-import qualified Language.LSP.Protocol.Internal.Types.FileSystemWatcher-import qualified Language.LSP.Protocol.Internal.Types.FoldingRange-import qualified Language.LSP.Protocol.Internal.Types.FoldingRangeClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.FoldingRangeOptions-import qualified Language.LSP.Protocol.Internal.Types.FoldingRangeParams-import qualified Language.LSP.Protocol.Internal.Types.FoldingRangeRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.FormattingOptions-import qualified Language.LSP.Protocol.Internal.Types.FullDocumentDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.GeneralClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.Hover-import qualified Language.LSP.Protocol.Internal.Types.HoverClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.HoverOptions-import qualified Language.LSP.Protocol.Internal.Types.HoverParams-import qualified Language.LSP.Protocol.Internal.Types.HoverRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.ImplementationClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ImplementationOptions-import qualified Language.LSP.Protocol.Internal.Types.ImplementationParams-import qualified Language.LSP.Protocol.Internal.Types.ImplementationRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.InitializeError-import qualified Language.LSP.Protocol.Internal.Types.InitializeParams-import qualified Language.LSP.Protocol.Internal.Types.InitializeResult-import qualified Language.LSP.Protocol.Internal.Types.InitializedParams-import qualified Language.LSP.Protocol.Internal.Types.InlayHint-import qualified Language.LSP.Protocol.Internal.Types.InlayHintClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.InlayHintLabelPart-import qualified Language.LSP.Protocol.Internal.Types.InlayHintOptions-import qualified Language.LSP.Protocol.Internal.Types.InlayHintParams-import qualified Language.LSP.Protocol.Internal.Types.InlayHintRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.InlayHintWorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.InlineValueClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.InlineValueContext-import qualified Language.LSP.Protocol.Internal.Types.InlineValueEvaluatableExpression-import qualified Language.LSP.Protocol.Internal.Types.InlineValueOptions-import qualified Language.LSP.Protocol.Internal.Types.InlineValueParams-import qualified Language.LSP.Protocol.Internal.Types.InlineValueRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.InlineValueText-import qualified Language.LSP.Protocol.Internal.Types.InlineValueVariableLookup-import qualified Language.LSP.Protocol.Internal.Types.InlineValueWorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.InsertReplaceEdit-import qualified Language.LSP.Protocol.Internal.Types.LinkedEditingRangeClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.LinkedEditingRangeOptions-import qualified Language.LSP.Protocol.Internal.Types.LinkedEditingRangeParams-import qualified Language.LSP.Protocol.Internal.Types.LinkedEditingRangeRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.LinkedEditingRanges-import qualified Language.LSP.Protocol.Internal.Types.Location-import qualified Language.LSP.Protocol.Internal.Types.LocationLink-import qualified Language.LSP.Protocol.Internal.Types.LogMessageParams-import qualified Language.LSP.Protocol.Internal.Types.LogTraceParams-import qualified Language.LSP.Protocol.Internal.Types.MarkdownClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.MarkupContent-import qualified Language.LSP.Protocol.Internal.Types.MessageActionItem-import qualified Language.LSP.Protocol.Internal.Types.Moniker-import qualified Language.LSP.Protocol.Internal.Types.MonikerClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.MonikerOptions-import qualified Language.LSP.Protocol.Internal.Types.MonikerParams-import qualified Language.LSP.Protocol.Internal.Types.MonikerRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.NotebookCell-import qualified Language.LSP.Protocol.Internal.Types.NotebookCellArrayChange-import qualified Language.LSP.Protocol.Internal.Types.NotebookCellTextDocumentFilter-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocument-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentChangeEvent-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentIdentifier-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncOptions-import qualified Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.OptionalVersionedTextDocumentIdentifier-import qualified Language.LSP.Protocol.Internal.Types.ParameterInformation-import qualified Language.LSP.Protocol.Internal.Types.PartialResultParams-import qualified Language.LSP.Protocol.Internal.Types.Position-import qualified Language.LSP.Protocol.Internal.Types.PrepareRenameParams-import qualified Language.LSP.Protocol.Internal.Types.PreviousResultId-import qualified Language.LSP.Protocol.Internal.Types.ProgressParams-import qualified Language.LSP.Protocol.Internal.Types.PublishDiagnosticsClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.PublishDiagnosticsParams-import qualified Language.LSP.Protocol.Internal.Types.Range-import qualified Language.LSP.Protocol.Internal.Types.ReferenceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ReferenceContext-import qualified Language.LSP.Protocol.Internal.Types.ReferenceOptions-import qualified Language.LSP.Protocol.Internal.Types.ReferenceParams-import qualified Language.LSP.Protocol.Internal.Types.ReferenceRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.Registration-import qualified Language.LSP.Protocol.Internal.Types.RegistrationParams-import qualified Language.LSP.Protocol.Internal.Types.RegularExpressionsClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.RelatedFullDocumentDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.RelatedUnchangedDocumentDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.RelativePattern-import qualified Language.LSP.Protocol.Internal.Types.RenameClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.RenameFile-import qualified Language.LSP.Protocol.Internal.Types.RenameFileOptions-import qualified Language.LSP.Protocol.Internal.Types.RenameFilesParams-import qualified Language.LSP.Protocol.Internal.Types.RenameOptions-import qualified Language.LSP.Protocol.Internal.Types.RenameParams-import qualified Language.LSP.Protocol.Internal.Types.RenameRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.ResourceOperation-import qualified Language.LSP.Protocol.Internal.Types.SaveOptions-import qualified Language.LSP.Protocol.Internal.Types.SelectionRange-import qualified Language.LSP.Protocol.Internal.Types.SelectionRangeClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.SelectionRangeOptions-import qualified Language.LSP.Protocol.Internal.Types.SelectionRangeParams-import qualified Language.LSP.Protocol.Internal.Types.SelectionRangeRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokens-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensDelta-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaParams-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaPartialResult-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensEdit-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensLegend-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensOptions-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensParams-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensPartialResult-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensRangeParams-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.SemanticTokensWorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ServerCapabilities-import qualified Language.LSP.Protocol.Internal.Types.SetTraceParams-import qualified Language.LSP.Protocol.Internal.Types.ShowDocumentClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ShowDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.ShowDocumentResult-import qualified Language.LSP.Protocol.Internal.Types.ShowMessageParams-import qualified Language.LSP.Protocol.Internal.Types.ShowMessageRequestClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.ShowMessageRequestParams-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelp-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelpClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelpContext-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelpOptions-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelpParams-import qualified Language.LSP.Protocol.Internal.Types.SignatureHelpRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.SignatureInformation-import qualified Language.LSP.Protocol.Internal.Types.StaticRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.SymbolInformation-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentChangeRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentEdit-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentIdentifier-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentItem-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentPositionParams-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentSaveRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentSyncClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.TextDocumentSyncOptions-import qualified Language.LSP.Protocol.Internal.Types.TextEdit-import qualified Language.LSP.Protocol.Internal.Types.TypeDefinitionClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.TypeDefinitionOptions-import qualified Language.LSP.Protocol.Internal.Types.TypeDefinitionParams-import qualified Language.LSP.Protocol.Internal.Types.TypeDefinitionRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchyClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchyItem-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchyOptions-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchyPrepareParams-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchyRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchySubtypesParams-import qualified Language.LSP.Protocol.Internal.Types.TypeHierarchySupertypesParams-import qualified Language.LSP.Protocol.Internal.Types.UInitializeParams-import qualified Language.LSP.Protocol.Internal.Types.UnchangedDocumentDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.Unregistration-import qualified Language.LSP.Protocol.Internal.Types.UnregistrationParams-import qualified Language.LSP.Protocol.Internal.Types.VersionedNotebookDocumentIdentifier-import qualified Language.LSP.Protocol.Internal.Types.VersionedTextDocumentIdentifier-import qualified Language.LSP.Protocol.Internal.Types.WillSaveTextDocumentParams-import qualified Language.LSP.Protocol.Internal.Types.WindowClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressBegin-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressCancelParams-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressCreateParams-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressEnd-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressOptions-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressParams-import qualified Language.LSP.Protocol.Internal.Types.WorkDoneProgressReport-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticParams-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReportPartialResult-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceEdit-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceEditClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceFolder-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceFoldersChangeEvent-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceFoldersInitializeParams-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceFoldersServerCapabilities-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceFullDocumentDiagnosticReport-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceSymbol-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceSymbolClientCapabilities-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceSymbolOptions-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceSymbolParams-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceSymbolRegistrationOptions-import qualified Language.LSP.Protocol.Internal.Types.WorkspaceUnchangedDocumentDiagnosticReport--Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ImplementationParams.ImplementationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Location.Location-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ImplementationRegistrationOptions.ImplementationRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeDefinitionParams.TypeDefinitionParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeDefinitionRegistrationOptions.TypeDefinitionRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceFolder.WorkspaceFolder-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeWorkspaceFoldersParams.DidChangeWorkspaceFoldersParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ConfigurationParams.ConfigurationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentColorParams.DocumentColorParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ColorInformation.ColorInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentColorRegistrationOptions.DocumentColorRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ColorPresentationParams.ColorPresentationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ColorPresentation.ColorPresentation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressOptions.WorkDoneProgressOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentRegistrationOptions.TextDocumentRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FoldingRangeParams.FoldingRangeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FoldingRange.FoldingRange-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FoldingRangeRegistrationOptions.FoldingRangeRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeclarationParams.DeclarationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeclarationRegistrationOptions.DeclarationRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SelectionRangeParams.SelectionRangeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SelectionRange.SelectionRange-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SelectionRangeRegistrationOptions.SelectionRangeRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressCreateParams.WorkDoneProgressCreateParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressCancelParams.WorkDoneProgressCancelParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyPrepareParams.CallHierarchyPrepareParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyItem.CallHierarchyItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyRegistrationOptions.CallHierarchyRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCallsParams.CallHierarchyIncomingCallsParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCall.CallHierarchyIncomingCall-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCallsParams.CallHierarchyOutgoingCallsParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCall.CallHierarchyOutgoingCall-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensParams.SemanticTokensParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokens.SemanticTokens-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensPartialResult.SemanticTokensPartialResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensRegistrationOptions.SemanticTokensRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaParams.SemanticTokensDeltaParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensDelta.SemanticTokensDelta-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaPartialResult.SemanticTokensDeltaPartialResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensRangeParams.SemanticTokensRangeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowDocumentParams.ShowDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowDocumentResult.ShowDocumentResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeParams.LinkedEditingRangeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LinkedEditingRanges.LinkedEditingRanges-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeRegistrationOptions.LinkedEditingRangeRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CreateFilesParams.CreateFilesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceEdit.WorkspaceEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationRegistrationOptions.FileOperationRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameFilesParams.RenameFilesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeleteFilesParams.DeleteFilesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MonikerParams.MonikerParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Moniker.Moniker-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MonikerRegistrationOptions.MonikerRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchyPrepareParams.TypeHierarchyPrepareParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchyItem.TypeHierarchyItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchyRegistrationOptions.TypeHierarchyRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchySupertypesParams.TypeHierarchySupertypesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchySubtypesParams.TypeHierarchySubtypesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueParams.InlineValueParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueRegistrationOptions.InlineValueRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintParams.InlayHintParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHint.InlayHint-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintRegistrationOptions.InlayHintRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticParams.DocumentDiagnosticParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportPartialResult.DocumentDiagnosticReportPartialResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticServerCancellationData.DiagnosticServerCancellationData-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticRegistrationOptions.DiagnosticRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticParams.WorkspaceDiagnosticParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReport.WorkspaceDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReportPartialResult.WorkspaceDiagnosticReportPartialResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidOpenNotebookDocumentParams.DidOpenNotebookDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeNotebookDocumentParams.DidChangeNotebookDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidSaveNotebookDocumentParams.DidSaveNotebookDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidCloseNotebookDocumentParams.DidCloseNotebookDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RegistrationParams.RegistrationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.UnregistrationParams.UnregistrationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InitializeParams.InitializeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InitializeResult.InitializeResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InitializeError.InitializeError-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InitializedParams.InitializedParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationParams.DidChangeConfigurationParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationRegistrationOptions.DidChangeConfigurationRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowMessageParams.ShowMessageParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowMessageRequestParams.ShowMessageRequestParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MessageActionItem.MessageActionItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LogMessageParams.LogMessageParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidOpenTextDocumentParams.DidOpenTextDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeTextDocumentParams.DidChangeTextDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentChangeRegistrationOptions.TextDocumentChangeRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidCloseTextDocumentParams.DidCloseTextDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidSaveTextDocumentParams.DidSaveTextDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentSaveRegistrationOptions.TextDocumentSaveRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WillSaveTextDocumentParams.WillSaveTextDocumentParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextEdit.TextEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesParams.DidChangeWatchedFilesParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesRegistrationOptions.DidChangeWatchedFilesRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.PublishDiagnosticsParams.PublishDiagnosticsParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionParams.CompletionParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionItem.CompletionItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionList.CompletionList-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionRegistrationOptions.CompletionRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.HoverParams.HoverParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Hover.Hover-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.HoverRegistrationOptions.HoverRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelpParams.SignatureHelpParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelp.SignatureHelp-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelpRegistrationOptions.SignatureHelpRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DefinitionParams.DefinitionParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DefinitionRegistrationOptions.DefinitionRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ReferenceParams.ReferenceParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ReferenceRegistrationOptions.ReferenceRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentHighlightParams.DocumentHighlightParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentHighlight.DocumentHighlight-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentHighlightRegistrationOptions.DocumentHighlightRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentSymbolParams.DocumentSymbolParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SymbolInformation.SymbolInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentSymbol.DocumentSymbol-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentSymbolRegistrationOptions.DocumentSymbolRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeActionParams.CodeActionParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Command.Command-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeAction.CodeAction-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeActionRegistrationOptions.CodeActionRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolParams.WorkspaceSymbolParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceSymbol.WorkspaceSymbol-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolRegistrationOptions.WorkspaceSymbolRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLensParams.CodeLensParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLens.CodeLens-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLensRegistrationOptions.CodeLensRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentLinkParams.DocumentLinkParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentLink.DocumentLink-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentLinkRegistrationOptions.DocumentLinkRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentFormattingParams.DocumentFormattingParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentFormattingRegistrationOptions.DocumentFormattingRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingParams.DocumentRangeFormattingParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingRegistrationOptions.DocumentRangeFormattingRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingParams.DocumentOnTypeFormattingParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingRegistrationOptions.DocumentOnTypeFormattingRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameParams.RenameParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameRegistrationOptions.RenameRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.PrepareRenameParams.PrepareRenameParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ExecuteCommandParams.ExecuteCommandParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ExecuteCommandRegistrationOptions.ExecuteCommandRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditParams.ApplyWorkspaceEditParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditResult.ApplyWorkspaceEditResult-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressBegin.WorkDoneProgressBegin-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressReport.WorkDoneProgressReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressEnd.WorkDoneProgressEnd-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SetTraceParams.SetTraceParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LogTraceParams.LogTraceParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CancelParams.CancelParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ProgressParams.ProgressParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentPositionParams.TextDocumentPositionParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkDoneProgressParams.WorkDoneProgressParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.PartialResultParams.PartialResultParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LocationLink.LocationLink-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Range.Range-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ImplementationOptions.ImplementationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.StaticRegistrationOptions.StaticRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeDefinitionOptions.TypeDefinitionOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersChangeEvent.WorkspaceFoldersChangeEvent-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ConfigurationItem.ConfigurationItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentIdentifier.TextDocumentIdentifier-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Color.Color-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentColorOptions.DocumentColorOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FoldingRangeOptions.FoldingRangeOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeclarationOptions.DeclarationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Position.Position-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SelectionRangeOptions.SelectionRangeOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyOptions.CallHierarchyOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensOptions.SemanticTokensOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensEdit.SemanticTokensEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeOptions.LinkedEditingRangeOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileCreate.FileCreate-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentEdit.TextDocumentEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CreateFile.CreateFile-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameFile.RenameFile-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeleteFile.DeleteFile-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ChangeAnnotation.ChangeAnnotation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationFilter.FileOperationFilter-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileRename.FileRename-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileDelete.FileDelete-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MonikerOptions.MonikerOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchyOptions.TypeHierarchyOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueContext.InlineValueContext-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueText.InlineValueText-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueVariableLookup.InlineValueVariableLookup-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueEvaluatableExpression.InlineValueEvaluatableExpression-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueOptions.InlineValueOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintLabelPart.InlayHintLabelPart-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MarkupContent.MarkupContent-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintOptions.InlayHintOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RelatedFullDocumentDiagnosticReport.RelatedFullDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RelatedUnchangedDocumentDiagnosticReport.RelatedUnchangedDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FullDocumentDiagnosticReport.FullDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.UnchangedDocumentDiagnosticReport.UnchangedDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticOptions.DiagnosticOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.PreviousResultId.PreviousResultId-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocument.NotebookDocument-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentItem.TextDocumentItem-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.VersionedNotebookDocumentIdentifier.VersionedNotebookDocumentIdentifier-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentChangeEvent.NotebookDocumentChangeEvent-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentIdentifier.NotebookDocumentIdentifier-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Registration.Registration-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Unregistration.Unregistration-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.UInitializeParams.UInitializeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersInitializeParams.WorkspaceFoldersInitializeParams-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ServerCapabilities.ServerCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.VersionedTextDocumentIdentifier.VersionedTextDocumentIdentifier-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SaveOptions.SaveOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileEvent.FileEvent-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileSystemWatcher.FileSystemWatcher-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.Diagnostic.Diagnostic-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionContext.CompletionContext-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionItemLabelDetails.CompletionItemLabelDetails-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InsertReplaceEdit.InsertReplaceEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionOptions.CompletionOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.HoverOptions.HoverOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelpContext.SignatureHelpContext-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureInformation.SignatureInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelpOptions.SignatureHelpOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DefinitionOptions.DefinitionOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ReferenceContext.ReferenceContext-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ReferenceOptions.ReferenceOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentHighlightOptions.DocumentHighlightOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.BaseSymbolInformation.BaseSymbolInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentSymbolOptions.DocumentSymbolOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeActionContext.CodeActionContext-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeActionOptions.CodeActionOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolOptions.WorkspaceSymbolOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLensOptions.CodeLensOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentLinkOptions.DocumentLinkOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FormattingOptions.FormattingOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentFormattingOptions.DocumentFormattingOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingOptions.DocumentRangeFormattingOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingOptions.DocumentOnTypeFormattingOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameOptions.RenameOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ExecuteCommandOptions.ExecuteCommandOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensLegend.SemanticTokensLegend-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.OptionalVersionedTextDocumentIdentifier.OptionalVersionedTextDocumentIdentifier-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.AnnotatedTextEdit.AnnotatedTextEdit-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ResourceOperation.ResourceOperation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CreateFileOptions.CreateFileOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameFileOptions.RenameFileOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeleteFileOptions.DeleteFileOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationPattern.FileOperationPattern-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceFullDocumentDiagnosticReport.WorkspaceFullDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceUnchangedDocumentDiagnosticReport.WorkspaceUnchangedDocumentDiagnosticReport-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookCell.NotebookCell-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookCellArrayChange.NotebookCellArrayChange-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ClientCapabilities.ClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentSyncOptions.TextDocumentSyncOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncOptions.NotebookDocumentSyncOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncRegistrationOptions.NotebookDocumentSyncRegistrationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersServerCapabilities.WorkspaceFoldersServerCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationOptions.FileOperationOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeDescription.CodeDescription-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticRelatedInformation.DiagnosticRelatedInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ParameterInformation.ParameterInformation-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookCellTextDocumentFilter.NotebookCellTextDocumentFilter-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationPatternOptions.FileOperationPatternOptions-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ExecutionSummary.ExecutionSummary-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceClientCapabilities.WorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentClientCapabilities.TextDocumentClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentClientCapabilities.NotebookDocumentClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WindowClientCapabilities.WindowClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.GeneralClientCapabilities.GeneralClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RelativePattern.RelativePattern-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceEditClientCapabilities.WorkspaceEditClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationClientCapabilities.DidChangeConfigurationClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesClientCapabilities.DidChangeWatchedFilesClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolClientCapabilities.WorkspaceSymbolClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ExecuteCommandClientCapabilities.ExecuteCommandClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensWorkspaceClientCapabilities.SemanticTokensWorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLensWorkspaceClientCapabilities.CodeLensWorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FileOperationClientCapabilities.FileOperationClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueWorkspaceClientCapabilities.InlineValueWorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintWorkspaceClientCapabilities.InlayHintWorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticWorkspaceClientCapabilities.DiagnosticWorkspaceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TextDocumentSyncClientCapabilities.TextDocumentSyncClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CompletionClientCapabilities.CompletionClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.HoverClientCapabilities.HoverClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SignatureHelpClientCapabilities.SignatureHelpClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DeclarationClientCapabilities.DeclarationClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DefinitionClientCapabilities.DefinitionClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeDefinitionClientCapabilities.TypeDefinitionClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ImplementationClientCapabilities.ImplementationClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ReferenceClientCapabilities.ReferenceClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentHighlightClientCapabilities.DocumentHighlightClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentSymbolClientCapabilities.DocumentSymbolClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeActionClientCapabilities.CodeActionClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CodeLensClientCapabilities.CodeLensClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentLinkClientCapabilities.DocumentLinkClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentColorClientCapabilities.DocumentColorClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentFormattingClientCapabilities.DocumentFormattingClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingClientCapabilities.DocumentRangeFormattingClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingClientCapabilities.DocumentOnTypeFormattingClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RenameClientCapabilities.RenameClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.FoldingRangeClientCapabilities.FoldingRangeClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SelectionRangeClientCapabilities.SelectionRangeClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.PublishDiagnosticsClientCapabilities.PublishDiagnosticsClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.CallHierarchyClientCapabilities.CallHierarchyClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.SemanticTokensClientCapabilities.SemanticTokensClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeClientCapabilities.LinkedEditingRangeClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MonikerClientCapabilities.MonikerClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.TypeHierarchyClientCapabilities.TypeHierarchyClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlineValueClientCapabilities.InlineValueClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.InlayHintClientCapabilities.InlayHintClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.DiagnosticClientCapabilities.DiagnosticClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncClientCapabilities.NotebookDocumentSyncClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowMessageRequestClientCapabilities.ShowMessageRequestClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.ShowDocumentClientCapabilities.ShowDocumentClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.RegularExpressionsClientCapabilities.RegularExpressionsClientCapabilities-Control.Lens.TH.makeFieldsNoPrefix ''Language.LSP.Protocol.Internal.Types.MarkdownClientCapabilities.MarkdownClientCapabilities
+ generated/Language/LSP/Protocol/Internal/Meta.hs view
@@ -0,0 +1,382 @@+{- ORMOLU_DISABLE -}+{- HLINT ignore -}+-- THIS IS A GENERATED FILE, DO NOT EDIT+{-# LANGUAGE TemplateHaskell #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+{-# OPTIONS_GHC -Wno-unused-matches #-}+{-# OPTIONS_GHC -Wno-deprecations #-}+module Language.LSP.Protocol.Internal.Meta where++import qualified Language.Haskell.TH as TH+import qualified Language.LSP.Protocol.Internal.Types++structNames :: [TH.Name]+structNames = [''Language.LSP.Protocol.Internal.Types.ImplementationParams+  ,''Language.LSP.Protocol.Internal.Types.Location+  ,''Language.LSP.Protocol.Internal.Types.ImplementationRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.TypeDefinitionParams+  ,''Language.LSP.Protocol.Internal.Types.TypeDefinitionRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceFolder+  ,''Language.LSP.Protocol.Internal.Types.DidChangeWorkspaceFoldersParams+  ,''Language.LSP.Protocol.Internal.Types.ConfigurationParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentColorParams+  ,''Language.LSP.Protocol.Internal.Types.ColorInformation+  ,''Language.LSP.Protocol.Internal.Types.DocumentColorRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.ColorPresentationParams+  ,''Language.LSP.Protocol.Internal.Types.ColorPresentation+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressOptions+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.FoldingRangeParams+  ,''Language.LSP.Protocol.Internal.Types.FoldingRange+  ,''Language.LSP.Protocol.Internal.Types.FoldingRangeRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DeclarationParams+  ,''Language.LSP.Protocol.Internal.Types.DeclarationRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.SelectionRangeParams+  ,''Language.LSP.Protocol.Internal.Types.SelectionRange+  ,''Language.LSP.Protocol.Internal.Types.SelectionRangeRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressCreateParams+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressCancelParams+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyPrepareParams+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyItem+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCallsParams+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCall+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCallsParams+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCall+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensParams+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokens+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensPartialResult+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaParams+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensDelta+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaPartialResult+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensRangeParams+  ,''Language.LSP.Protocol.Internal.Types.ShowDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.ShowDocumentResult+  ,''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeParams+  ,''Language.LSP.Protocol.Internal.Types.LinkedEditingRanges+  ,''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.CreateFilesParams+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceEdit+  ,''Language.LSP.Protocol.Internal.Types.FileOperationRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.RenameFilesParams+  ,''Language.LSP.Protocol.Internal.Types.DeleteFilesParams+  ,''Language.LSP.Protocol.Internal.Types.MonikerParams+  ,''Language.LSP.Protocol.Internal.Types.Moniker+  ,''Language.LSP.Protocol.Internal.Types.MonikerRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchyPrepareParams+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchyItem+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchyRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchySupertypesParams+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchySubtypesParams+  ,''Language.LSP.Protocol.Internal.Types.InlineValueParams+  ,''Language.LSP.Protocol.Internal.Types.InlineValueRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.InlayHintParams+  ,''Language.LSP.Protocol.Internal.Types.InlayHint+  ,''Language.LSP.Protocol.Internal.Types.InlayHintRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportPartialResult+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticServerCancellationData+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticParams+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReportPartialResult+  ,''Language.LSP.Protocol.Internal.Types.DidOpenNotebookDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.DidChangeNotebookDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.DidSaveNotebookDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.DidCloseNotebookDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.RegistrationParams+  ,''Language.LSP.Protocol.Internal.Types.UnregistrationParams+  ,''Language.LSP.Protocol.Internal.Types.InitializeParams+  ,''Language.LSP.Protocol.Internal.Types.InitializeResult+  ,''Language.LSP.Protocol.Internal.Types.InitializeError+  ,''Language.LSP.Protocol.Internal.Types.InitializedParams+  ,''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationParams+  ,''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.ShowMessageParams+  ,''Language.LSP.Protocol.Internal.Types.ShowMessageRequestParams+  ,''Language.LSP.Protocol.Internal.Types.MessageActionItem+  ,''Language.LSP.Protocol.Internal.Types.LogMessageParams+  ,''Language.LSP.Protocol.Internal.Types.DidOpenTextDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.DidChangeTextDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentChangeRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DidCloseTextDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.DidSaveTextDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentSaveRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WillSaveTextDocumentParams+  ,''Language.LSP.Protocol.Internal.Types.TextEdit+  ,''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesParams+  ,''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.PublishDiagnosticsParams+  ,''Language.LSP.Protocol.Internal.Types.CompletionParams+  ,''Language.LSP.Protocol.Internal.Types.CompletionItem+  ,''Language.LSP.Protocol.Internal.Types.CompletionList+  ,''Language.LSP.Protocol.Internal.Types.CompletionRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.HoverParams+  ,''Language.LSP.Protocol.Internal.Types.Hover+  ,''Language.LSP.Protocol.Internal.Types.HoverRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpParams+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelp+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DefinitionParams+  ,''Language.LSP.Protocol.Internal.Types.DefinitionRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.ReferenceParams+  ,''Language.LSP.Protocol.Internal.Types.ReferenceRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlightParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlight+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlightRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentSymbolParams+  ,''Language.LSP.Protocol.Internal.Types.SymbolInformation+  ,''Language.LSP.Protocol.Internal.Types.DocumentSymbol+  ,''Language.LSP.Protocol.Internal.Types.DocumentSymbolRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.CodeActionParams+  ,''Language.LSP.Protocol.Internal.Types.Command+  ,''Language.LSP.Protocol.Internal.Types.CodeAction+  ,''Language.LSP.Protocol.Internal.Types.CodeActionRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolParams+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceSymbol+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.CodeLensParams+  ,''Language.LSP.Protocol.Internal.Types.CodeLens+  ,''Language.LSP.Protocol.Internal.Types.CodeLensRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentLinkParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentLink+  ,''Language.LSP.Protocol.Internal.Types.DocumentLinkRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentFormattingParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentFormattingRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingParams+  ,''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.RenameParams+  ,''Language.LSP.Protocol.Internal.Types.RenameRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.PrepareRenameParams+  ,''Language.LSP.Protocol.Internal.Types.ExecuteCommandParams+  ,''Language.LSP.Protocol.Internal.Types.ExecuteCommandRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditParams+  ,''Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditResult+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressBegin+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressReport+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressEnd+  ,''Language.LSP.Protocol.Internal.Types.SetTraceParams+  ,''Language.LSP.Protocol.Internal.Types.LogTraceParams+  ,''Language.LSP.Protocol.Internal.Types.CancelParams+  ,''Language.LSP.Protocol.Internal.Types.ProgressParams+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentPositionParams+  ,''Language.LSP.Protocol.Internal.Types.WorkDoneProgressParams+  ,''Language.LSP.Protocol.Internal.Types.PartialResultParams+  ,''Language.LSP.Protocol.Internal.Types.LocationLink+  ,''Language.LSP.Protocol.Internal.Types.Range+  ,''Language.LSP.Protocol.Internal.Types.ImplementationOptions+  ,''Language.LSP.Protocol.Internal.Types.StaticRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.TypeDefinitionOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersChangeEvent+  ,''Language.LSP.Protocol.Internal.Types.ConfigurationItem+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentIdentifier+  ,''Language.LSP.Protocol.Internal.Types.Color+  ,''Language.LSP.Protocol.Internal.Types.DocumentColorOptions+  ,''Language.LSP.Protocol.Internal.Types.FoldingRangeOptions+  ,''Language.LSP.Protocol.Internal.Types.DeclarationOptions+  ,''Language.LSP.Protocol.Internal.Types.Position+  ,''Language.LSP.Protocol.Internal.Types.SelectionRangeOptions+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyOptions+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensOptions+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensEdit+  ,''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeOptions+  ,''Language.LSP.Protocol.Internal.Types.FileCreate+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentEdit+  ,''Language.LSP.Protocol.Internal.Types.CreateFile+  ,''Language.LSP.Protocol.Internal.Types.RenameFile+  ,''Language.LSP.Protocol.Internal.Types.DeleteFile+  ,''Language.LSP.Protocol.Internal.Types.ChangeAnnotation+  ,''Language.LSP.Protocol.Internal.Types.FileOperationFilter+  ,''Language.LSP.Protocol.Internal.Types.FileRename+  ,''Language.LSP.Protocol.Internal.Types.FileDelete+  ,''Language.LSP.Protocol.Internal.Types.MonikerOptions+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchyOptions+  ,''Language.LSP.Protocol.Internal.Types.InlineValueContext+  ,''Language.LSP.Protocol.Internal.Types.InlineValueText+  ,''Language.LSP.Protocol.Internal.Types.InlineValueVariableLookup+  ,''Language.LSP.Protocol.Internal.Types.InlineValueEvaluatableExpression+  ,''Language.LSP.Protocol.Internal.Types.InlineValueOptions+  ,''Language.LSP.Protocol.Internal.Types.InlayHintLabelPart+  ,''Language.LSP.Protocol.Internal.Types.MarkupContent+  ,''Language.LSP.Protocol.Internal.Types.InlayHintOptions+  ,''Language.LSP.Protocol.Internal.Types.RelatedFullDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.RelatedUnchangedDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.FullDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.UnchangedDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticOptions+  ,''Language.LSP.Protocol.Internal.Types.PreviousResultId+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocument+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentItem+  ,''Language.LSP.Protocol.Internal.Types.VersionedNotebookDocumentIdentifier+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentChangeEvent+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentIdentifier+  ,''Language.LSP.Protocol.Internal.Types.Registration+  ,''Language.LSP.Protocol.Internal.Types.Unregistration+  ,''Language.LSP.Protocol.Internal.Types.UInitializeParams+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersInitializeParams+  ,''Language.LSP.Protocol.Internal.Types.ServerCapabilities+  ,''Language.LSP.Protocol.Internal.Types.VersionedTextDocumentIdentifier+  ,''Language.LSP.Protocol.Internal.Types.SaveOptions+  ,''Language.LSP.Protocol.Internal.Types.FileEvent+  ,''Language.LSP.Protocol.Internal.Types.FileSystemWatcher+  ,''Language.LSP.Protocol.Internal.Types.Diagnostic+  ,''Language.LSP.Protocol.Internal.Types.CompletionContext+  ,''Language.LSP.Protocol.Internal.Types.CompletionItemLabelDetails+  ,''Language.LSP.Protocol.Internal.Types.InsertReplaceEdit+  ,''Language.LSP.Protocol.Internal.Types.CompletionOptions+  ,''Language.LSP.Protocol.Internal.Types.HoverOptions+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpContext+  ,''Language.LSP.Protocol.Internal.Types.SignatureInformation+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpOptions+  ,''Language.LSP.Protocol.Internal.Types.DefinitionOptions+  ,''Language.LSP.Protocol.Internal.Types.ReferenceContext+  ,''Language.LSP.Protocol.Internal.Types.ReferenceOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlightOptions+  ,''Language.LSP.Protocol.Internal.Types.BaseSymbolInformation+  ,''Language.LSP.Protocol.Internal.Types.DocumentSymbolOptions+  ,''Language.LSP.Protocol.Internal.Types.CodeActionContext+  ,''Language.LSP.Protocol.Internal.Types.CodeActionOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolOptions+  ,''Language.LSP.Protocol.Internal.Types.CodeLensOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentLinkOptions+  ,''Language.LSP.Protocol.Internal.Types.FormattingOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentFormattingOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingOptions+  ,''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingOptions+  ,''Language.LSP.Protocol.Internal.Types.RenameOptions+  ,''Language.LSP.Protocol.Internal.Types.ExecuteCommandOptions+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensLegend+  ,''Language.LSP.Protocol.Internal.Types.OptionalVersionedTextDocumentIdentifier+  ,''Language.LSP.Protocol.Internal.Types.AnnotatedTextEdit+  ,''Language.LSP.Protocol.Internal.Types.ResourceOperation+  ,''Language.LSP.Protocol.Internal.Types.CreateFileOptions+  ,''Language.LSP.Protocol.Internal.Types.RenameFileOptions+  ,''Language.LSP.Protocol.Internal.Types.DeleteFileOptions+  ,''Language.LSP.Protocol.Internal.Types.FileOperationPattern+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceFullDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceUnchangedDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.NotebookCell+  ,''Language.LSP.Protocol.Internal.Types.NotebookCellArrayChange+  ,''Language.LSP.Protocol.Internal.Types.ClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentSyncOptions+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncOptions+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncRegistrationOptions+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceFoldersServerCapabilities+  ,''Language.LSP.Protocol.Internal.Types.FileOperationOptions+  ,''Language.LSP.Protocol.Internal.Types.CodeDescription+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticRelatedInformation+  ,''Language.LSP.Protocol.Internal.Types.ParameterInformation+  ,''Language.LSP.Protocol.Internal.Types.NotebookCellTextDocumentFilter+  ,''Language.LSP.Protocol.Internal.Types.FileOperationPatternOptions+  ,''Language.LSP.Protocol.Internal.Types.ExecutionSummary+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.WindowClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.GeneralClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.RelativePattern+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceEditClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DidChangeConfigurationClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceSymbolClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.ExecuteCommandClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensWorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.CodeLensWorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.FileOperationClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.InlineValueWorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.InlayHintWorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticWorkspaceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentSyncClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.CompletionClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.HoverClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DeclarationClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DefinitionClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.TypeDefinitionClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.ImplementationClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.ReferenceClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlightClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentSymbolClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.CodeActionClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.CodeLensClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentLinkClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentColorClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentFormattingClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.RenameClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.FoldingRangeClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.SelectionRangeClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.PublishDiagnosticsClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.CallHierarchyClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokensClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.LinkedEditingRangeClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.MonikerClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.TypeHierarchyClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.InlineValueClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.InlayHintClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.ShowMessageRequestClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.ShowDocumentClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.RegularExpressionsClientCapabilities+  ,''Language.LSP.Protocol.Internal.Types.MarkdownClientCapabilities]+aliasNames :: [TH.Name]+aliasNames = [''Language.LSP.Protocol.Internal.Types.Definition+  ,''Language.LSP.Protocol.Internal.Types.DefinitionLink+  ,''Language.LSP.Protocol.Internal.Types.Declaration+  ,''Language.LSP.Protocol.Internal.Types.DeclarationLink+  ,''Language.LSP.Protocol.Internal.Types.InlineValue+  ,''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.PrepareRenameResult+  ,''Language.LSP.Protocol.Internal.Types.DocumentSelector+  ,''Language.LSP.Protocol.Internal.Types.ProgressToken+  ,''Language.LSP.Protocol.Internal.Types.ChangeAnnotationIdentifier+  ,''Language.LSP.Protocol.Internal.Types.WorkspaceDocumentDiagnosticReport+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentContentChangeEvent+  ,''Language.LSP.Protocol.Internal.Types.MarkedString+  ,''Language.LSP.Protocol.Internal.Types.DocumentFilter+  ,''Language.LSP.Protocol.Internal.Types.GlobPattern+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentFilter+  ,''Language.LSP.Protocol.Internal.Types.NotebookDocumentFilter+  ,''Language.LSP.Protocol.Internal.Types.Pattern]+enumNames :: [TH.Name]+enumNames = [''Language.LSP.Protocol.Internal.Types.SemanticTokenTypes+  ,''Language.LSP.Protocol.Internal.Types.SemanticTokenModifiers+  ,''Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportKind+  ,''Language.LSP.Protocol.Internal.Types.ErrorCodes+  ,''Language.LSP.Protocol.Internal.Types.LSPErrorCodes+  ,''Language.LSP.Protocol.Internal.Types.FoldingRangeKind+  ,''Language.LSP.Protocol.Internal.Types.SymbolKind+  ,''Language.LSP.Protocol.Internal.Types.SymbolTag+  ,''Language.LSP.Protocol.Internal.Types.UniquenessLevel+  ,''Language.LSP.Protocol.Internal.Types.MonikerKind+  ,''Language.LSP.Protocol.Internal.Types.InlayHintKind+  ,''Language.LSP.Protocol.Internal.Types.MessageType+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentSyncKind+  ,''Language.LSP.Protocol.Internal.Types.TextDocumentSaveReason+  ,''Language.LSP.Protocol.Internal.Types.CompletionItemKind+  ,''Language.LSP.Protocol.Internal.Types.CompletionItemTag+  ,''Language.LSP.Protocol.Internal.Types.InsertTextFormat+  ,''Language.LSP.Protocol.Internal.Types.InsertTextMode+  ,''Language.LSP.Protocol.Internal.Types.DocumentHighlightKind+  ,''Language.LSP.Protocol.Internal.Types.CodeActionKind+  ,''Language.LSP.Protocol.Internal.Types.TraceValues+  ,''Language.LSP.Protocol.Internal.Types.MarkupKind+  ,''Language.LSP.Protocol.Internal.Types.PositionEncodingKind+  ,''Language.LSP.Protocol.Internal.Types.FileChangeType+  ,''Language.LSP.Protocol.Internal.Types.WatchKind+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticSeverity+  ,''Language.LSP.Protocol.Internal.Types.DiagnosticTag+  ,''Language.LSP.Protocol.Internal.Types.CompletionTriggerKind+  ,''Language.LSP.Protocol.Internal.Types.SignatureHelpTriggerKind+  ,''Language.LSP.Protocol.Internal.Types.CodeActionTriggerKind+  ,''Language.LSP.Protocol.Internal.Types.FileOperationPatternKind+  ,''Language.LSP.Protocol.Internal.Types.NotebookCellKind+  ,''Language.LSP.Protocol.Internal.Types.ResourceOperationKind+  ,''Language.LSP.Protocol.Internal.Types.FailureHandlingKind+  ,''Language.LSP.Protocol.Internal.Types.PrepareSupportDefaultBehavior+  ,''Language.LSP.Protocol.Internal.Types.TokenFormat]
generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditParams.hs view
@@ -43,4 +43,4 @@     ,["edit" Aeson..= arg1]]  instance Aeson.FromJSON ApplyWorkspaceEditParams where-  parseJSON = Aeson.withObject "ApplyWorkspaceEditParams" $ \arg -> ApplyWorkspaceEditParams <$> arg Aeson..:! "label" <*> arg Aeson..: "edit"+  parseJSON = Aeson.withObject "ApplyWorkspaceEditParams" $ \arg -> ApplyWorkspaceEditParams <$> arg Language.LSP.Protocol.Types.Common..:!? "label" <*> arg Aeson..: "edit"
generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditResult.hs view
@@ -51,4 +51,4 @@     ,"failedChange" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ApplyWorkspaceEditResult where-  parseJSON = Aeson.withObject "ApplyWorkspaceEditResult" $ \arg -> ApplyWorkspaceEditResult <$> arg Aeson..: "applied" <*> arg Aeson..:! "failureReason" <*> arg Aeson..:! "failedChange"+  parseJSON = Aeson.withObject "ApplyWorkspaceEditResult" $ \arg -> ApplyWorkspaceEditResult <$> arg Aeson..: "applied" <*> arg Language.LSP.Protocol.Types.Common..:!? "failureReason" <*> arg Language.LSP.Protocol.Types.Common..:!? "failedChange"
generated/Language/LSP/Protocol/Internal/Types/BaseSymbolInformation.hs view
@@ -57,4 +57,4 @@     ,"containerName" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON BaseSymbolInformation where-  parseJSON = Aeson.withObject "BaseSymbolInformation" $ \arg -> BaseSymbolInformation <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "containerName"+  parseJSON = Aeson.withObject "BaseSymbolInformation" $ \arg -> BaseSymbolInformation <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "containerName"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyClientCapabilities.hs view
@@ -36,4 +36,4 @@   toJSON (CallHierarchyClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON CallHierarchyClientCapabilities where-  parseJSON = Aeson.withObject "CallHierarchyClientCapabilities" $ \arg -> CallHierarchyClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "CallHierarchyClientCapabilities" $ \arg -> CallHierarchyClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyIncomingCallsParams.hs view
@@ -49,4 +49,4 @@     ,["item" Aeson..= arg2]]  instance Aeson.FromJSON CallHierarchyIncomingCallsParams where-  parseJSON = Aeson.withObject "CallHierarchyIncomingCallsParams" $ \arg -> CallHierarchyIncomingCallsParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "item"+  parseJSON = Aeson.withObject "CallHierarchyIncomingCallsParams" $ \arg -> CallHierarchyIncomingCallsParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "item"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyItem.hs view
@@ -80,4 +80,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg7]  instance Aeson.FromJSON CallHierarchyItem where-  parseJSON = Aeson.withObject "CallHierarchyItem" $ \arg -> CallHierarchyItem <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "detail" <*> arg Aeson..: "uri" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "CallHierarchyItem" $ \arg -> CallHierarchyItem <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "detail" <*> arg Aeson..: "uri" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOptions.hs view
@@ -36,4 +36,4 @@   toJSON (CallHierarchyOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON CallHierarchyOptions where-  parseJSON = Aeson.withObject "CallHierarchyOptions" $ \arg -> CallHierarchyOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "CallHierarchyOptions" $ \arg -> CallHierarchyOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOutgoingCallsParams.hs view
@@ -49,4 +49,4 @@     ,["item" Aeson..= arg2]]  instance Aeson.FromJSON CallHierarchyOutgoingCallsParams where-  parseJSON = Aeson.withObject "CallHierarchyOutgoingCallsParams" $ \arg -> CallHierarchyOutgoingCallsParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "item"+  parseJSON = Aeson.withObject "CallHierarchyOutgoingCallsParams" $ \arg -> CallHierarchyOutgoingCallsParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "item"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyPrepareParams.hs view
@@ -49,4 +49,4 @@     ,"workDoneToken" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CallHierarchyPrepareParams where-  parseJSON = Aeson.withObject "CallHierarchyPrepareParams" $ \arg -> CallHierarchyPrepareParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "CallHierarchyPrepareParams" $ \arg -> CallHierarchyPrepareParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/CallHierarchyRegistrationOptions.hs view
@@ -50,4 +50,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CallHierarchyRegistrationOptions where-  parseJSON = Aeson.withObject "CallHierarchyRegistrationOptions" $ \arg -> CallHierarchyRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "CallHierarchyRegistrationOptions" $ \arg -> CallHierarchyRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/ChangeAnnotation.hs view
@@ -50,4 +50,4 @@     ,"description" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ChangeAnnotation where-  parseJSON = Aeson.withObject "ChangeAnnotation" $ \arg -> ChangeAnnotation <$> arg Aeson..: "label" <*> arg Aeson..:! "needsConfirmation" <*> arg Aeson..:! "description"+  parseJSON = Aeson.withObject "ChangeAnnotation" $ \arg -> ChangeAnnotation <$> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "needsConfirmation" <*> arg Language.LSP.Protocol.Types.Common..:!? "description"
generated/Language/LSP/Protocol/Internal/Types/ClientCapabilities.hs view
@@ -69,4 +69,4 @@     ,"experimental" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON ClientCapabilities where-  parseJSON = Aeson.withObject "ClientCapabilities" $ \arg -> ClientCapabilities <$> arg Aeson..:! "workspace" <*> arg Aeson..:! "textDocument" <*> arg Aeson..:! "notebookDocument" <*> arg Aeson..:! "window" <*> arg Aeson..:! "general" <*> arg Aeson..:! "experimental"+  parseJSON = Aeson.withObject "ClientCapabilities" $ \arg -> ClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "workspace" <*> arg Language.LSP.Protocol.Types.Common..:!? "textDocument" <*> arg Language.LSP.Protocol.Types.Common..:!? "notebookDocument" <*> arg Language.LSP.Protocol.Types.Common..:!? "window" <*> arg Language.LSP.Protocol.Types.Common..:!? "general" <*> arg Language.LSP.Protocol.Types.Common..:!? "experimental"
generated/Language/LSP/Protocol/Internal/Types/CodeAction.hs view
@@ -106,4 +106,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg7]  instance Aeson.FromJSON CodeAction where-  parseJSON = Aeson.withObject "CodeAction" $ \arg -> CodeAction <$> arg Aeson..: "title" <*> arg Aeson..:! "kind" <*> arg Aeson..:! "diagnostics" <*> arg Aeson..:! "isPreferred" <*> arg Aeson..:! "disabled" <*> arg Aeson..:! "edit" <*> arg Aeson..:! "command" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "CodeAction" $ \arg -> CodeAction <$> arg Aeson..: "title" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "diagnostics" <*> arg Language.LSP.Protocol.Types.Common..:!? "isPreferred" <*> arg Language.LSP.Protocol.Types.Common..:!? "disabled" <*> arg Language.LSP.Protocol.Types.Common..:!? "edit" <*> arg Language.LSP.Protocol.Types.Common..:!? "command" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/CodeActionClientCapabilities.hs view
@@ -88,4 +88,4 @@     ,"honorsChangeAnnotations" Language.LSP.Protocol.Types.Common..=? arg6]  instance Aeson.FromJSON CodeActionClientCapabilities where-  parseJSON = Aeson.withObject "CodeActionClientCapabilities" $ \arg -> CodeActionClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "codeActionLiteralSupport" <*> arg Aeson..:! "isPreferredSupport" <*> arg Aeson..:! "disabledSupport" <*> arg Aeson..:! "dataSupport" <*> arg Aeson..:! "resolveSupport" <*> arg Aeson..:! "honorsChangeAnnotations"+  parseJSON = Aeson.withObject "CodeActionClientCapabilities" $ \arg -> CodeActionClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeActionLiteralSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "isPreferredSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "disabledSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "dataSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "honorsChangeAnnotations"
generated/Language/LSP/Protocol/Internal/Types/CodeActionContext.hs view
@@ -57,4 +57,4 @@     ,"triggerKind" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CodeActionContext where-  parseJSON = Aeson.withObject "CodeActionContext" $ \arg -> CodeActionContext <$> arg Aeson..: "diagnostics" <*> arg Aeson..:! "only" <*> arg Aeson..:! "triggerKind"+  parseJSON = Aeson.withObject "CodeActionContext" $ \arg -> CodeActionContext <$> arg Aeson..: "diagnostics" <*> arg Language.LSP.Protocol.Types.Common..:!? "only" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerKind"
generated/Language/LSP/Protocol/Internal/Types/CodeActionKind.hs view
@@ -96,7 +96,7 @@   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON   , Aeson.FromJSON-  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CodeActionKind Data.Text.Text)+  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CodeActionKind)   deriving Pretty via (ViaJSON CodeActionKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum CodeActionKind where
generated/Language/LSP/Protocol/Internal/Types/CodeActionOptions.hs view
@@ -51,4 +51,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CodeActionOptions where-  parseJSON = Aeson.withObject "CodeActionOptions" $ \arg -> CodeActionOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "codeActionKinds" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "CodeActionOptions" $ \arg -> CodeActionOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeActionKinds" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/CodeActionParams.hs view
@@ -59,4 +59,4 @@     ,["context" Aeson..= arg4]]  instance Aeson.FromJSON CodeActionParams where-  parseJSON = Aeson.withObject "CodeActionParams" $ \arg -> CodeActionParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "context"+  parseJSON = Aeson.withObject "CodeActionParams" $ \arg -> CodeActionParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "context"
generated/Language/LSP/Protocol/Internal/Types/CodeActionRegistrationOptions.hs view
@@ -58,4 +58,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON CodeActionRegistrationOptions where-  parseJSON = Aeson.withObject "CodeActionRegistrationOptions" $ \arg -> CodeActionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "codeActionKinds" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "CodeActionRegistrationOptions" $ \arg -> CodeActionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeActionKinds" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/CodeActionTriggerKind.hs view
@@ -40,7 +40,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CodeActionTriggerKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CodeActionTriggerKind)   deriving Pretty via (ViaJSON CodeActionTriggerKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum CodeActionTriggerKind where
generated/Language/LSP/Protocol/Internal/Types/CodeLens.hs view
@@ -52,4 +52,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CodeLens where-  parseJSON = Aeson.withObject "CodeLens" $ \arg -> CodeLens <$> arg Aeson..: "range" <*> arg Aeson..:! "command" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "CodeLens" $ \arg -> CodeLens <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "command" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/CodeLensClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (CodeLensClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON CodeLensClientCapabilities where-  parseJSON = Aeson.withObject "CodeLensClientCapabilities" $ \arg -> CodeLensClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "CodeLensClientCapabilities" $ \arg -> CodeLensClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/CodeLensOptions.hs view
@@ -39,4 +39,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON CodeLensOptions where-  parseJSON = Aeson.withObject "CodeLensOptions" $ \arg -> CodeLensOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "CodeLensOptions" $ \arg -> CodeLensOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/CodeLensParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON CodeLensParams where-  parseJSON = Aeson.withObject "CodeLensParams" $ \arg -> CodeLensParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "CodeLensParams" $ \arg -> CodeLensParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/CodeLensRegistrationOptions.hs view
@@ -46,4 +46,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON CodeLensRegistrationOptions where-  parseJSON = Aeson.withObject "CodeLensRegistrationOptions" $ \arg -> CodeLensRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "CodeLensRegistrationOptions" $ \arg -> CodeLensRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/CodeLensWorkspaceClientCapabilities.hs view
@@ -40,4 +40,4 @@   toJSON (CodeLensWorkspaceClientCapabilities arg0) = Aeson.object $ concat $  ["refreshSupport" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON CodeLensWorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "CodeLensWorkspaceClientCapabilities" $ \arg -> CodeLensWorkspaceClientCapabilities <$> arg Aeson..:! "refreshSupport"+  parseJSON = Aeson.withObject "CodeLensWorkspaceClientCapabilities" $ \arg -> CodeLensWorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "refreshSupport"
generated/Language/LSP/Protocol/Internal/Types/ColorPresentation.hs view
@@ -51,4 +51,4 @@     ,"additionalTextEdits" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ColorPresentation where-  parseJSON = Aeson.withObject "ColorPresentation" $ \arg -> ColorPresentation <$> arg Aeson..: "label" <*> arg Aeson..:! "textEdit" <*> arg Aeson..:! "additionalTextEdits"+  parseJSON = Aeson.withObject "ColorPresentation" $ \arg -> ColorPresentation <$> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "textEdit" <*> arg Language.LSP.Protocol.Types.Common..:!? "additionalTextEdits"
generated/Language/LSP/Protocol/Internal/Types/ColorPresentationParams.hs view
@@ -59,4 +59,4 @@     ,["range" Aeson..= arg4]]  instance Aeson.FromJSON ColorPresentationParams where-  parseJSON = Aeson.withObject "ColorPresentationParams" $ \arg -> ColorPresentationParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "color" <*> arg Aeson..: "range"+  parseJSON = Aeson.withObject "ColorPresentationParams" $ \arg -> ColorPresentationParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "color" <*> arg Aeson..: "range"
generated/Language/LSP/Protocol/Internal/Types/Command.hs view
@@ -50,4 +50,4 @@     ,"arguments" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON Command where-  parseJSON = Aeson.withObject "Command" $ \arg -> Command <$> arg Aeson..: "title" <*> arg Aeson..: "command" <*> arg Aeson..:! "arguments"+  parseJSON = Aeson.withObject "Command" $ \arg -> Command <$> arg Aeson..: "title" <*> arg Aeson..: "command" <*> arg Language.LSP.Protocol.Types.Common..:!? "arguments"
generated/Language/LSP/Protocol/Internal/Types/CompletionClientCapabilities.hs view
@@ -74,4 +74,4 @@     ,"completionList" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON CompletionClientCapabilities where-  parseJSON = Aeson.withObject "CompletionClientCapabilities" $ \arg -> CompletionClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "completionItem" <*> arg Aeson..:! "completionItemKind" <*> arg Aeson..:! "insertTextMode" <*> arg Aeson..:! "contextSupport" <*> arg Aeson..:! "completionList"+  parseJSON = Aeson.withObject "CompletionClientCapabilities" $ \arg -> CompletionClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionItem" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionItemKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "insertTextMode" <*> arg Language.LSP.Protocol.Types.Common..:!? "contextSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionList"
generated/Language/LSP/Protocol/Internal/Types/CompletionContext.hs view
@@ -42,4 +42,4 @@     ,"triggerCharacter" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON CompletionContext where-  parseJSON = Aeson.withObject "CompletionContext" $ \arg -> CompletionContext <$> arg Aeson..: "triggerKind" <*> arg Aeson..:! "triggerCharacter"+  parseJSON = Aeson.withObject "CompletionContext" $ \arg -> CompletionContext <$> arg Aeson..: "triggerKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacter"
generated/Language/LSP/Protocol/Internal/Types/CompletionItem.hs view
@@ -215,4 +215,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg18]  instance Aeson.FromJSON CompletionItem where-  parseJSON = Aeson.withObject "CompletionItem" $ \arg -> CompletionItem <$> arg Aeson..: "label" <*> arg Aeson..:! "labelDetails" <*> arg Aeson..:! "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "detail" <*> arg Aeson..:! "documentation" <*> arg Aeson..:! "deprecated" <*> arg Aeson..:! "preselect" <*> arg Aeson..:! "sortText" <*> arg Aeson..:! "filterText" <*> arg Aeson..:! "insertText" <*> arg Aeson..:! "insertTextFormat" <*> arg Aeson..:! "insertTextMode" <*> arg Aeson..:! "textEdit" <*> arg Aeson..:! "textEditText" <*> arg Aeson..:! "additionalTextEdits" <*> arg Aeson..:! "commitCharacters" <*> arg Aeson..:! "command" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "CompletionItem" $ \arg -> CompletionItem <$> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "labelDetails" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "detail" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentation" <*> arg Language.LSP.Protocol.Types.Common..:!? "deprecated" <*> arg Language.LSP.Protocol.Types.Common..:!? "preselect" <*> arg Language.LSP.Protocol.Types.Common..:!? "sortText" <*> arg Language.LSP.Protocol.Types.Common..:!? "filterText" <*> arg Language.LSP.Protocol.Types.Common..:!? "insertText" <*> arg Language.LSP.Protocol.Types.Common..:!? "insertTextFormat" <*> arg Language.LSP.Protocol.Types.Common..:!? "insertTextMode" <*> arg Language.LSP.Protocol.Types.Common..:!? "textEdit" <*> arg Language.LSP.Protocol.Types.Common..:!? "textEditText" <*> arg Language.LSP.Protocol.Types.Common..:!? "additionalTextEdits" <*> arg Language.LSP.Protocol.Types.Common..:!? "commitCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "command" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/CompletionItemKind.hs view
@@ -127,7 +127,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionItemKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionItemKind)   deriving Pretty via (ViaJSON CompletionItemKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum CompletionItemKind where
generated/Language/LSP/Protocol/Internal/Types/CompletionItemLabelDetails.hs view
@@ -44,4 +44,4 @@     ,"description" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON CompletionItemLabelDetails where-  parseJSON = Aeson.withObject "CompletionItemLabelDetails" $ \arg -> CompletionItemLabelDetails <$> arg Aeson..:! "detail" <*> arg Aeson..:! "description"+  parseJSON = Aeson.withObject "CompletionItemLabelDetails" $ \arg -> CompletionItemLabelDetails <$> arg Language.LSP.Protocol.Types.Common..:!? "detail" <*> arg Language.LSP.Protocol.Types.Common..:!? "description"
generated/Language/LSP/Protocol/Internal/Types/CompletionItemTag.hs view
@@ -34,7 +34,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionItemTag Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionItemTag)   deriving Pretty via (ViaJSON CompletionItemTag)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum CompletionItemTag where
generated/Language/LSP/Protocol/Internal/Types/CompletionList.hs view
@@ -67,4 +67,4 @@     ,["items" Aeson..= arg2]]  instance Aeson.FromJSON CompletionList where-  parseJSON = Aeson.withObject "CompletionList" $ \arg -> CompletionList <$> arg Aeson..: "isIncomplete" <*> arg Aeson..:! "itemDefaults" <*> arg Aeson..: "items"+  parseJSON = Aeson.withObject "CompletionList" $ \arg -> CompletionList <$> arg Aeson..: "isIncomplete" <*> arg Language.LSP.Protocol.Types.Common..:!? "itemDefaults" <*> arg Aeson..: "items"
generated/Language/LSP/Protocol/Internal/Types/CompletionOptions.hs view
@@ -74,4 +74,4 @@     ,"completionItem" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON CompletionOptions where-  parseJSON = Aeson.withObject "CompletionOptions" $ \arg -> CompletionOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "triggerCharacters" <*> arg Aeson..:! "allCommitCharacters" <*> arg Aeson..:! "resolveProvider" <*> arg Aeson..:! "completionItem"+  parseJSON = Aeson.withObject "CompletionOptions" $ \arg -> CompletionOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "allCommitCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionItem"
generated/Language/LSP/Protocol/Internal/Types/CompletionParams.hs view
@@ -60,4 +60,4 @@     ,"context" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON CompletionParams where-  parseJSON = Aeson.withObject "CompletionParams" $ \arg -> CompletionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..:! "context"+  parseJSON = Aeson.withObject "CompletionParams" $ \arg -> CompletionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "context"
generated/Language/LSP/Protocol/Internal/Types/CompletionRegistrationOptions.hs view
@@ -81,4 +81,4 @@     ,"completionItem" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON CompletionRegistrationOptions where-  parseJSON = Aeson.withObject "CompletionRegistrationOptions" $ \arg -> CompletionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "triggerCharacters" <*> arg Aeson..:! "allCommitCharacters" <*> arg Aeson..:! "resolveProvider" <*> arg Aeson..:! "completionItem"+  parseJSON = Aeson.withObject "CompletionRegistrationOptions" $ \arg -> CompletionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "allCommitCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionItem"
generated/Language/LSP/Protocol/Internal/Types/CompletionTriggerKind.hs view
@@ -41,7 +41,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionTriggerKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum CompletionTriggerKind)   deriving Pretty via (ViaJSON CompletionTriggerKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum CompletionTriggerKind where
generated/Language/LSP/Protocol/Internal/Types/ConfigurationItem.hs view
@@ -40,4 +40,4 @@     ,"section" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ConfigurationItem where-  parseJSON = Aeson.withObject "ConfigurationItem" $ \arg -> ConfigurationItem <$> arg Aeson..:! "scopeUri" <*> arg Aeson..:! "section"+  parseJSON = Aeson.withObject "ConfigurationItem" $ \arg -> ConfigurationItem <$> arg Language.LSP.Protocol.Types.Common..:!? "scopeUri" <*> arg Language.LSP.Protocol.Types.Common..:!? "section"
generated/Language/LSP/Protocol/Internal/Types/CreateFile.hs view
@@ -55,4 +55,4 @@     ,"options" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON CreateFile where-  parseJSON = Aeson.withObject "CreateFile" $ \arg -> CreateFile <$> arg Aeson..:! "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "uri" <*> arg Aeson..:! "options"+  parseJSON = Aeson.withObject "CreateFile" $ \arg -> CreateFile <$> arg Language.LSP.Protocol.Types.Common..:!? "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "uri" <*> arg Language.LSP.Protocol.Types.Common..:!? "options"
generated/Language/LSP/Protocol/Internal/Types/CreateFileOptions.hs view
@@ -39,4 +39,4 @@     ,"ignoreIfExists" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON CreateFileOptions where-  parseJSON = Aeson.withObject "CreateFileOptions" $ \arg -> CreateFileOptions <$> arg Aeson..:! "overwrite" <*> arg Aeson..:! "ignoreIfExists"+  parseJSON = Aeson.withObject "CreateFileOptions" $ \arg -> CreateFileOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "overwrite" <*> arg Language.LSP.Protocol.Types.Common..:!? "ignoreIfExists"
generated/Language/LSP/Protocol/Internal/Types/DeclarationClientCapabilities.hs view
@@ -41,4 +41,4 @@     ,"linkSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DeclarationClientCapabilities where-  parseJSON = Aeson.withObject "DeclarationClientCapabilities" $ \arg -> DeclarationClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "linkSupport"+  parseJSON = Aeson.withObject "DeclarationClientCapabilities" $ \arg -> DeclarationClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkSupport"
generated/Language/LSP/Protocol/Internal/Types/DeclarationOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DeclarationOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DeclarationOptions where-  parseJSON = Aeson.withObject "DeclarationOptions" $ \arg -> DeclarationOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DeclarationOptions" $ \arg -> DeclarationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DeclarationParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON DeclarationParams where-  parseJSON = Aeson.withObject "DeclarationParams" $ \arg -> DeclarationParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "DeclarationParams" $ \arg -> DeclarationParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/DeclarationRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON DeclarationRegistrationOptions where-  parseJSON = Aeson.withObject "DeclarationRegistrationOptions" $ \arg -> DeclarationRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "DeclarationRegistrationOptions" $ \arg -> DeclarationRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/DefinitionClientCapabilities.hs view
@@ -41,4 +41,4 @@     ,"linkSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DefinitionClientCapabilities where-  parseJSON = Aeson.withObject "DefinitionClientCapabilities" $ \arg -> DefinitionClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "linkSupport"+  parseJSON = Aeson.withObject "DefinitionClientCapabilities" $ \arg -> DefinitionClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkSupport"
generated/Language/LSP/Protocol/Internal/Types/DefinitionOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DefinitionOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DefinitionOptions where-  parseJSON = Aeson.withObject "DefinitionOptions" $ \arg -> DefinitionOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DefinitionOptions" $ \arg -> DefinitionOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DefinitionParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON DefinitionParams where-  parseJSON = Aeson.withObject "DefinitionParams" $ \arg -> DefinitionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "DefinitionParams" $ \arg -> DefinitionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/DefinitionRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DefinitionRegistrationOptions where-  parseJSON = Aeson.withObject "DefinitionRegistrationOptions" $ \arg -> DefinitionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DefinitionRegistrationOptions" $ \arg -> DefinitionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DeleteFile.hs view
@@ -55,4 +55,4 @@     ,"options" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON DeleteFile where-  parseJSON = Aeson.withObject "DeleteFile" $ \arg -> DeleteFile <$> arg Aeson..:! "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "uri" <*> arg Aeson..:! "options"+  parseJSON = Aeson.withObject "DeleteFile" $ \arg -> DeleteFile <$> arg Language.LSP.Protocol.Types.Common..:!? "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "uri" <*> arg Language.LSP.Protocol.Types.Common..:!? "options"
generated/Language/LSP/Protocol/Internal/Types/DeleteFileOptions.hs view
@@ -39,4 +39,4 @@     ,"ignoreIfNotExists" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DeleteFileOptions where-  parseJSON = Aeson.withObject "DeleteFileOptions" $ \arg -> DeleteFileOptions <$> arg Aeson..:! "recursive" <*> arg Aeson..:! "ignoreIfNotExists"+  parseJSON = Aeson.withObject "DeleteFileOptions" $ \arg -> DeleteFileOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "recursive" <*> arg Language.LSP.Protocol.Types.Common..:!? "ignoreIfNotExists"
generated/Language/LSP/Protocol/Internal/Types/Diagnostic.hs view
@@ -94,4 +94,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg8]  instance Aeson.FromJSON Diagnostic where-  parseJSON = Aeson.withObject "Diagnostic" $ \arg -> Diagnostic <$> arg Aeson..: "range" <*> arg Aeson..:! "severity" <*> arg Aeson..:! "code" <*> arg Aeson..:! "codeDescription" <*> arg Aeson..:! "source" <*> arg Aeson..: "message" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "relatedInformation" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "Diagnostic" $ \arg -> Diagnostic <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "severity" <*> arg Language.LSP.Protocol.Types.Common..:!? "code" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeDescription" <*> arg Language.LSP.Protocol.Types.Common..:!? "source" <*> arg Aeson..: "message" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "relatedInformation" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/DiagnosticClientCapabilities.hs view
@@ -43,4 +43,4 @@     ,"relatedDocumentSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DiagnosticClientCapabilities where-  parseJSON = Aeson.withObject "DiagnosticClientCapabilities" $ \arg -> DiagnosticClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "relatedDocumentSupport"+  parseJSON = Aeson.withObject "DiagnosticClientCapabilities" $ \arg -> DiagnosticClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "relatedDocumentSupport"
generated/Language/LSP/Protocol/Internal/Types/DiagnosticOptions.hs view
@@ -56,4 +56,4 @@     ,["workspaceDiagnostics" Aeson..= arg3]]  instance Aeson.FromJSON DiagnosticOptions where-  parseJSON = Aeson.withObject "DiagnosticOptions" $ \arg -> DiagnosticOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "identifier" <*> arg Aeson..: "interFileDependencies" <*> arg Aeson..: "workspaceDiagnostics"+  parseJSON = Aeson.withObject "DiagnosticOptions" $ \arg -> DiagnosticOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "identifier" <*> arg Aeson..: "interFileDependencies" <*> arg Aeson..: "workspaceDiagnostics"
generated/Language/LSP/Protocol/Internal/Types/DiagnosticRegistrationOptions.hs view
@@ -69,4 +69,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON DiagnosticRegistrationOptions where-  parseJSON = Aeson.withObject "DiagnosticRegistrationOptions" $ \arg -> DiagnosticRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "identifier" <*> arg Aeson..: "interFileDependencies" <*> arg Aeson..: "workspaceDiagnostics" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "DiagnosticRegistrationOptions" $ \arg -> DiagnosticRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "identifier" <*> arg Aeson..: "interFileDependencies" <*> arg Aeson..: "workspaceDiagnostics" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/DiagnosticSeverity.hs view
@@ -43,7 +43,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DiagnosticSeverity Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DiagnosticSeverity)   deriving Pretty via (ViaJSON DiagnosticSeverity)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum DiagnosticSeverity where
generated/Language/LSP/Protocol/Internal/Types/DiagnosticTag.hs view
@@ -42,7 +42,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DiagnosticTag Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DiagnosticTag)   deriving Pretty via (ViaJSON DiagnosticTag)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum DiagnosticTag where
generated/Language/LSP/Protocol/Internal/Types/DiagnosticWorkspaceClientCapabilities.hs view
@@ -42,4 +42,4 @@   toJSON (DiagnosticWorkspaceClientCapabilities arg0) = Aeson.object $ concat $  ["refreshSupport" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DiagnosticWorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "DiagnosticWorkspaceClientCapabilities" $ \arg -> DiagnosticWorkspaceClientCapabilities <$> arg Aeson..:! "refreshSupport"+  parseJSON = Aeson.withObject "DiagnosticWorkspaceClientCapabilities" $ \arg -> DiagnosticWorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "refreshSupport"
generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (DidChangeConfigurationClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DidChangeConfigurationClientCapabilities where-  parseJSON = Aeson.withObject "DidChangeConfigurationClientCapabilities" $ \arg -> DidChangeConfigurationClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DidChangeConfigurationClientCapabilities" $ \arg -> DidChangeConfigurationClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationRegistrationOptions.hs view
@@ -35,4 +35,4 @@   toJSON (DidChangeConfigurationRegistrationOptions arg0) = Aeson.object $ concat $  ["section" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DidChangeConfigurationRegistrationOptions where-  parseJSON = Aeson.withObject "DidChangeConfigurationRegistrationOptions" $ \arg -> DidChangeConfigurationRegistrationOptions <$> arg Aeson..:! "section"+  parseJSON = Aeson.withObject "DidChangeConfigurationRegistrationOptions" $ \arg -> DidChangeConfigurationRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "section"
generated/Language/LSP/Protocol/Internal/Types/DidChangeWatchedFilesClientCapabilities.hs view
@@ -44,4 +44,4 @@     ,"relativePatternSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DidChangeWatchedFilesClientCapabilities where-  parseJSON = Aeson.withObject "DidChangeWatchedFilesClientCapabilities" $ \arg -> DidChangeWatchedFilesClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "relativePatternSupport"+  parseJSON = Aeson.withObject "DidChangeWatchedFilesClientCapabilities" $ \arg -> DidChangeWatchedFilesClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "relativePatternSupport"
generated/Language/LSP/Protocol/Internal/Types/DidSaveTextDocumentParams.hs view
@@ -42,4 +42,4 @@     ,"text" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DidSaveTextDocumentParams where-  parseJSON = Aeson.withObject "DidSaveTextDocumentParams" $ \arg -> DidSaveTextDocumentParams <$> arg Aeson..: "textDocument" <*> arg Aeson..:! "text"+  parseJSON = Aeson.withObject "DidSaveTextDocumentParams" $ \arg -> DidSaveTextDocumentParams <$> arg Aeson..: "textDocument" <*> arg Language.LSP.Protocol.Types.Common..:!? "text"
generated/Language/LSP/Protocol/Internal/Types/DocumentColorClientCapabilities.hs view
@@ -36,4 +36,4 @@   toJSON (DocumentColorClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentColorClientCapabilities where-  parseJSON = Aeson.withObject "DocumentColorClientCapabilities" $ \arg -> DocumentColorClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DocumentColorClientCapabilities" $ \arg -> DocumentColorClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DocumentColorOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentColorOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentColorOptions where-  parseJSON = Aeson.withObject "DocumentColorOptions" $ \arg -> DocumentColorOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentColorOptions" $ \arg -> DocumentColorOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentColorParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON DocumentColorParams where-  parseJSON = Aeson.withObject "DocumentColorParams" $ \arg -> DocumentColorParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "DocumentColorParams" $ \arg -> DocumentColorParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/DocumentColorRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON DocumentColorRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentColorRegistrationOptions" $ \arg -> DocumentColorRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "DocumentColorRegistrationOptions" $ \arg -> DocumentColorRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticParams.hs view
@@ -60,4 +60,4 @@     ,"previousResultId" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON DocumentDiagnosticParams where-  parseJSON = Aeson.withObject "DocumentDiagnosticParams" $ \arg -> DocumentDiagnosticParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..:! "identifier" <*> arg Aeson..:! "previousResultId"+  parseJSON = Aeson.withObject "DocumentDiagnosticParams" $ \arg -> DocumentDiagnosticParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Language.LSP.Protocol.Types.Common..:!? "identifier" <*> arg Language.LSP.Protocol.Types.Common..:!? "previousResultId"
generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticReportKind.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DocumentDiagnosticReportKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DocumentDiagnosticReportKind)   deriving Pretty via (ViaJSON DocumentDiagnosticReportKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum DocumentDiagnosticReportKind where
generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentFormattingClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentFormattingClientCapabilities where-  parseJSON = Aeson.withObject "DocumentFormattingClientCapabilities" $ \arg -> DocumentFormattingClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DocumentFormattingClientCapabilities" $ \arg -> DocumentFormattingClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentFormattingOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentFormattingOptions where-  parseJSON = Aeson.withObject "DocumentFormattingOptions" $ \arg -> DocumentFormattingOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentFormattingOptions" $ \arg -> DocumentFormattingOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingParams.hs view
@@ -47,4 +47,4 @@     ,["options" Aeson..= arg2]]  instance Aeson.FromJSON DocumentFormattingParams where-  parseJSON = Aeson.withObject "DocumentFormattingParams" $ \arg -> DocumentFormattingParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "options"+  parseJSON = Aeson.withObject "DocumentFormattingParams" $ \arg -> DocumentFormattingParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "options"
generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentFormattingRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentFormattingRegistrationOptions" $ \arg -> DocumentFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentFormattingRegistrationOptions" $ \arg -> DocumentFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlight.hs view
@@ -43,4 +43,4 @@     ,"kind" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentHighlight where-  parseJSON = Aeson.withObject "DocumentHighlight" $ \arg -> DocumentHighlight <$> arg Aeson..: "range" <*> arg Aeson..:! "kind"+  parseJSON = Aeson.withObject "DocumentHighlight" $ \arg -> DocumentHighlight <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind"
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentHighlightClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentHighlightClientCapabilities where-  parseJSON = Aeson.withObject "DocumentHighlightClientCapabilities" $ \arg -> DocumentHighlightClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DocumentHighlightClientCapabilities" $ \arg -> DocumentHighlightClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightKind.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DocumentHighlightKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum DocumentHighlightKind)   deriving Pretty via (ViaJSON DocumentHighlightKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum DocumentHighlightKind where
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentHighlightOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentHighlightOptions where-  parseJSON = Aeson.withObject "DocumentHighlightOptions" $ \arg -> DocumentHighlightOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentHighlightOptions" $ \arg -> DocumentHighlightOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON DocumentHighlightParams where-  parseJSON = Aeson.withObject "DocumentHighlightParams" $ \arg -> DocumentHighlightParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "DocumentHighlightParams" $ \arg -> DocumentHighlightParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentHighlightRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentHighlightRegistrationOptions" $ \arg -> DocumentHighlightRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentHighlightRegistrationOptions" $ \arg -> DocumentHighlightRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentLink.hs view
@@ -60,4 +60,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON DocumentLink where-  parseJSON = Aeson.withObject "DocumentLink" $ \arg -> DocumentLink <$> arg Aeson..: "range" <*> arg Aeson..:! "target" <*> arg Aeson..:! "tooltip" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "DocumentLink" $ \arg -> DocumentLink <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "target" <*> arg Language.LSP.Protocol.Types.Common..:!? "tooltip" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/DocumentLinkClientCapabilities.hs view
@@ -41,4 +41,4 @@     ,"tooltipSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentLinkClientCapabilities where-  parseJSON = Aeson.withObject "DocumentLinkClientCapabilities" $ \arg -> DocumentLinkClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "tooltipSupport"+  parseJSON = Aeson.withObject "DocumentLinkClientCapabilities" $ \arg -> DocumentLinkClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "tooltipSupport"
generated/Language/LSP/Protocol/Internal/Types/DocumentLinkOptions.hs view
@@ -39,4 +39,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentLinkOptions where-  parseJSON = Aeson.withObject "DocumentLinkOptions" $ \arg -> DocumentLinkOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "DocumentLinkOptions" $ \arg -> DocumentLinkOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/DocumentLinkParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON DocumentLinkParams where-  parseJSON = Aeson.withObject "DocumentLinkParams" $ \arg -> DocumentLinkParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "DocumentLinkParams" $ \arg -> DocumentLinkParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/DocumentLinkRegistrationOptions.hs view
@@ -46,4 +46,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON DocumentLinkRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentLinkRegistrationOptions" $ \arg -> DocumentLinkRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "DocumentLinkRegistrationOptions" $ \arg -> DocumentLinkRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentOnTypeFormattingClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentOnTypeFormattingClientCapabilities where-  parseJSON = Aeson.withObject "DocumentOnTypeFormattingClientCapabilities" $ \arg -> DocumentOnTypeFormattingClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DocumentOnTypeFormattingClientCapabilities" $ \arg -> DocumentOnTypeFormattingClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingOptions.hs view
@@ -40,4 +40,4 @@     ,"moreTriggerCharacter" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentOnTypeFormattingOptions where-  parseJSON = Aeson.withObject "DocumentOnTypeFormattingOptions" $ \arg -> DocumentOnTypeFormattingOptions <$> arg Aeson..: "firstTriggerCharacter" <*> arg Aeson..:! "moreTriggerCharacter"+  parseJSON = Aeson.withObject "DocumentOnTypeFormattingOptions" $ \arg -> DocumentOnTypeFormattingOptions <$> arg Aeson..: "firstTriggerCharacter" <*> arg Language.LSP.Protocol.Types.Common..:!? "moreTriggerCharacter"
generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingRegistrationOptions.hs view
@@ -47,4 +47,4 @@     ,"moreTriggerCharacter" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON DocumentOnTypeFormattingRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentOnTypeFormattingRegistrationOptions" $ \arg -> DocumentOnTypeFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..: "firstTriggerCharacter" <*> arg Aeson..:! "moreTriggerCharacter"+  parseJSON = Aeson.withObject "DocumentOnTypeFormattingRegistrationOptions" $ \arg -> DocumentOnTypeFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..: "firstTriggerCharacter" <*> arg Language.LSP.Protocol.Types.Common..:!? "moreTriggerCharacter"
generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentRangeFormattingClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentRangeFormattingClientCapabilities where-  parseJSON = Aeson.withObject "DocumentRangeFormattingClientCapabilities" $ \arg -> DocumentRangeFormattingClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "DocumentRangeFormattingClientCapabilities" $ \arg -> DocumentRangeFormattingClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingOptions.hs view
@@ -34,4 +34,4 @@   toJSON (DocumentRangeFormattingOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON DocumentRangeFormattingOptions where-  parseJSON = Aeson.withObject "DocumentRangeFormattingOptions" $ \arg -> DocumentRangeFormattingOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentRangeFormattingOptions" $ \arg -> DocumentRangeFormattingOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingParams.hs view
@@ -53,4 +53,4 @@     ,["options" Aeson..= arg3]]  instance Aeson.FromJSON DocumentRangeFormattingParams where-  parseJSON = Aeson.withObject "DocumentRangeFormattingParams" $ \arg -> DocumentRangeFormattingParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "options"+  parseJSON = Aeson.withObject "DocumentRangeFormattingParams" $ \arg -> DocumentRangeFormattingParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "options"
generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentRangeFormattingRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentRangeFormattingRegistrationOptions" $ \arg -> DocumentRangeFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "DocumentRangeFormattingRegistrationOptions" $ \arg -> DocumentRangeFormattingRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/DocumentSymbol.hs view
@@ -84,4 +84,4 @@     ,"children" Language.LSP.Protocol.Types.Common..=? arg7]  instance Aeson.FromJSON DocumentSymbol where-  parseJSON = Aeson.withObject "DocumentSymbol" $ \arg -> DocumentSymbol <$> arg Aeson..: "name" <*> arg Aeson..:! "detail" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "deprecated" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Aeson..:! "children"+  parseJSON = Aeson.withObject "DocumentSymbol" $ \arg -> DocumentSymbol <$> arg Aeson..: "name" <*> arg Language.LSP.Protocol.Types.Common..:!? "detail" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "deprecated" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "children"
generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolClientCapabilities.hs view
@@ -65,4 +65,4 @@     ,"labelSupport" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON DocumentSymbolClientCapabilities where-  parseJSON = Aeson.withObject "DocumentSymbolClientCapabilities" $ \arg -> DocumentSymbolClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "symbolKind" <*> arg Aeson..:! "hierarchicalDocumentSymbolSupport" <*> arg Aeson..:! "tagSupport" <*> arg Aeson..:! "labelSupport"+  parseJSON = Aeson.withObject "DocumentSymbolClientCapabilities" $ \arg -> DocumentSymbolClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "symbolKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "hierarchicalDocumentSymbolSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "tagSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "labelSupport"
generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolOptions.hs view
@@ -43,4 +43,4 @@     ,"label" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON DocumentSymbolOptions where-  parseJSON = Aeson.withObject "DocumentSymbolOptions" $ \arg -> DocumentSymbolOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "label"+  parseJSON = Aeson.withObject "DocumentSymbolOptions" $ \arg -> DocumentSymbolOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "label"
generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON DocumentSymbolParams where-  parseJSON = Aeson.withObject "DocumentSymbolParams" $ \arg -> DocumentSymbolParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "DocumentSymbolParams" $ \arg -> DocumentSymbolParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolRegistrationOptions.hs view
@@ -50,4 +50,4 @@     ,"label" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON DocumentSymbolRegistrationOptions where-  parseJSON = Aeson.withObject "DocumentSymbolRegistrationOptions" $ \arg -> DocumentSymbolRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "label"+  parseJSON = Aeson.withObject "DocumentSymbolRegistrationOptions" $ \arg -> DocumentSymbolRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "label"
generated/Language/LSP/Protocol/Internal/Types/ErrorCodes.hs view
@@ -57,7 +57,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum ErrorCodes Language.LSP.Protocol.Types.Common.Int32)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum ErrorCodes)   deriving Pretty via (ViaJSON ErrorCodes)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum ErrorCodes where
generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (ExecuteCommandClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON ExecuteCommandClientCapabilities where-  parseJSON = Aeson.withObject "ExecuteCommandClientCapabilities" $ \arg -> ExecuteCommandClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "ExecuteCommandClientCapabilities" $ \arg -> ExecuteCommandClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandOptions.hs view
@@ -40,4 +40,4 @@     ,["commands" Aeson..= arg1]]  instance Aeson.FromJSON ExecuteCommandOptions where-  parseJSON = Aeson.withObject "ExecuteCommandOptions" $ \arg -> ExecuteCommandOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "commands"+  parseJSON = Aeson.withObject "ExecuteCommandOptions" $ \arg -> ExecuteCommandOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "commands"
generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandParams.hs view
@@ -47,4 +47,4 @@     ,"arguments" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ExecuteCommandParams where-  parseJSON = Aeson.withObject "ExecuteCommandParams" $ \arg -> ExecuteCommandParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "command" <*> arg Aeson..:! "arguments"+  parseJSON = Aeson.withObject "ExecuteCommandParams" $ \arg -> ExecuteCommandParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "command" <*> arg Language.LSP.Protocol.Types.Common..:!? "arguments"
generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandRegistrationOptions.hs view
@@ -40,4 +40,4 @@     ,["commands" Aeson..= arg1]]  instance Aeson.FromJSON ExecuteCommandRegistrationOptions where-  parseJSON = Aeson.withObject "ExecuteCommandRegistrationOptions" $ \arg -> ExecuteCommandRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "commands"+  parseJSON = Aeson.withObject "ExecuteCommandRegistrationOptions" $ \arg -> ExecuteCommandRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "commands"
generated/Language/LSP/Protocol/Internal/Types/ExecutionSummary.hs view
@@ -42,4 +42,4 @@     ,"success" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ExecutionSummary where-  parseJSON = Aeson.withObject "ExecutionSummary" $ \arg -> ExecutionSummary <$> arg Aeson..: "executionOrder" <*> arg Aeson..:! "success"+  parseJSON = Aeson.withObject "ExecutionSummary" $ \arg -> ExecutionSummary <$> arg Aeson..: "executionOrder" <*> arg Language.LSP.Protocol.Types.Common..:!? "success"
generated/Language/LSP/Protocol/Internal/Types/FailureHandlingKind.hs view
@@ -48,7 +48,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FailureHandlingKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FailureHandlingKind)   deriving Pretty via (ViaJSON FailureHandlingKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum FailureHandlingKind where
generated/Language/LSP/Protocol/Internal/Types/FileChangeType.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FileChangeType Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FileChangeType)   deriving Pretty via (ViaJSON FileChangeType)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum FileChangeType where
generated/Language/LSP/Protocol/Internal/Types/FileOperationClientCapabilities.hs view
@@ -69,4 +69,4 @@     ,"willDelete" Language.LSP.Protocol.Types.Common..=? arg6]  instance Aeson.FromJSON FileOperationClientCapabilities where-  parseJSON = Aeson.withObject "FileOperationClientCapabilities" $ \arg -> FileOperationClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "didCreate" <*> arg Aeson..:! "willCreate" <*> arg Aeson..:! "didRename" <*> arg Aeson..:! "willRename" <*> arg Aeson..:! "didDelete" <*> arg Aeson..:! "willDelete"+  parseJSON = Aeson.withObject "FileOperationClientCapabilities" $ \arg -> FileOperationClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "didCreate" <*> arg Language.LSP.Protocol.Types.Common..:!? "willCreate" <*> arg Language.LSP.Protocol.Types.Common..:!? "didRename" <*> arg Language.LSP.Protocol.Types.Common..:!? "willRename" <*> arg Language.LSP.Protocol.Types.Common..:!? "didDelete" <*> arg Language.LSP.Protocol.Types.Common..:!? "willDelete"
generated/Language/LSP/Protocol/Internal/Types/FileOperationFilter.hs view
@@ -44,4 +44,4 @@     ,["pattern" Aeson..= arg1]]  instance Aeson.FromJSON FileOperationFilter where-  parseJSON = Aeson.withObject "FileOperationFilter" $ \arg -> FileOperationFilter <$> arg Aeson..:! "scheme" <*> arg Aeson..: "pattern"+  parseJSON = Aeson.withObject "FileOperationFilter" $ \arg -> FileOperationFilter <$> arg Language.LSP.Protocol.Types.Common..:!? "scheme" <*> arg Aeson..: "pattern"
generated/Language/LSP/Protocol/Internal/Types/FileOperationOptions.hs view
@@ -62,4 +62,4 @@     ,"willDelete" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON FileOperationOptions where-  parseJSON = Aeson.withObject "FileOperationOptions" $ \arg -> FileOperationOptions <$> arg Aeson..:! "didCreate" <*> arg Aeson..:! "willCreate" <*> arg Aeson..:! "didRename" <*> arg Aeson..:! "willRename" <*> arg Aeson..:! "didDelete" <*> arg Aeson..:! "willDelete"+  parseJSON = Aeson.withObject "FileOperationOptions" $ \arg -> FileOperationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "didCreate" <*> arg Language.LSP.Protocol.Types.Common..:!? "willCreate" <*> arg Language.LSP.Protocol.Types.Common..:!? "didRename" <*> arg Language.LSP.Protocol.Types.Common..:!? "willRename" <*> arg Language.LSP.Protocol.Types.Common..:!? "didDelete" <*> arg Language.LSP.Protocol.Types.Common..:!? "willDelete"
generated/Language/LSP/Protocol/Internal/Types/FileOperationPattern.hs view
@@ -58,4 +58,4 @@     ,"options" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON FileOperationPattern where-  parseJSON = Aeson.withObject "FileOperationPattern" $ \arg -> FileOperationPattern <$> arg Aeson..: "glob" <*> arg Aeson..:! "matches" <*> arg Aeson..:! "options"+  parseJSON = Aeson.withObject "FileOperationPattern" $ \arg -> FileOperationPattern <$> arg Aeson..: "glob" <*> arg Language.LSP.Protocol.Types.Common..:!? "matches" <*> arg Language.LSP.Protocol.Types.Common..:!? "options"
generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternKind.hs view
@@ -38,7 +38,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FileOperationPatternKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FileOperationPatternKind)   deriving Pretty via (ViaJSON FileOperationPatternKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum FileOperationPatternKind where
generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternOptions.hs view
@@ -36,4 +36,4 @@   toJSON (FileOperationPatternOptions arg0) = Aeson.object $ concat $  ["ignoreCase" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON FileOperationPatternOptions where-  parseJSON = Aeson.withObject "FileOperationPatternOptions" $ \arg -> FileOperationPatternOptions <$> arg Aeson..:! "ignoreCase"+  parseJSON = Aeson.withObject "FileOperationPatternOptions" $ \arg -> FileOperationPatternOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "ignoreCase"
generated/Language/LSP/Protocol/Internal/Types/FileSystemWatcher.hs view
@@ -45,4 +45,4 @@     ,"kind" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON FileSystemWatcher where-  parseJSON = Aeson.withObject "FileSystemWatcher" $ \arg -> FileSystemWatcher <$> arg Aeson..: "globPattern" <*> arg Aeson..:! "kind"+  parseJSON = Aeson.withObject "FileSystemWatcher" $ \arg -> FileSystemWatcher <$> arg Aeson..: "globPattern" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind"
generated/Language/LSP/Protocol/Internal/Types/FoldingRange.hs view
@@ -70,4 +70,4 @@     ,"collapsedText" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON FoldingRange where-  parseJSON = Aeson.withObject "FoldingRange" $ \arg -> FoldingRange <$> arg Aeson..: "startLine" <*> arg Aeson..:! "startCharacter" <*> arg Aeson..: "endLine" <*> arg Aeson..:! "endCharacter" <*> arg Aeson..:! "kind" <*> arg Aeson..:! "collapsedText"+  parseJSON = Aeson.withObject "FoldingRange" $ \arg -> FoldingRange <$> arg Aeson..: "startLine" <*> arg Language.LSP.Protocol.Types.Common..:!? "startCharacter" <*> arg Aeson..: "endLine" <*> arg Language.LSP.Protocol.Types.Common..:!? "endCharacter" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "collapsedText"
generated/Language/LSP/Protocol/Internal/Types/FoldingRangeClientCapabilities.hs view
@@ -67,4 +67,4 @@     ,"foldingRange" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON FoldingRangeClientCapabilities where-  parseJSON = Aeson.withObject "FoldingRangeClientCapabilities" $ \arg -> FoldingRangeClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "rangeLimit" <*> arg Aeson..:! "lineFoldingOnly" <*> arg Aeson..:! "foldingRangeKind" <*> arg Aeson..:! "foldingRange"+  parseJSON = Aeson.withObject "FoldingRangeClientCapabilities" $ \arg -> FoldingRangeClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "rangeLimit" <*> arg Language.LSP.Protocol.Types.Common..:!? "lineFoldingOnly" <*> arg Language.LSP.Protocol.Types.Common..:!? "foldingRangeKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "foldingRange"
generated/Language/LSP/Protocol/Internal/Types/FoldingRangeKind.hs view
@@ -41,7 +41,7 @@   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON   , Aeson.FromJSON-  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FoldingRangeKind Data.Text.Text)+  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum FoldingRangeKind)   deriving Pretty via (ViaJSON FoldingRangeKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum FoldingRangeKind where
generated/Language/LSP/Protocol/Internal/Types/FoldingRangeOptions.hs view
@@ -34,4 +34,4 @@   toJSON (FoldingRangeOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON FoldingRangeOptions where-  parseJSON = Aeson.withObject "FoldingRangeOptions" $ \arg -> FoldingRangeOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "FoldingRangeOptions" $ \arg -> FoldingRangeOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/FoldingRangeParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON FoldingRangeParams where-  parseJSON = Aeson.withObject "FoldingRangeParams" $ \arg -> FoldingRangeParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "FoldingRangeParams" $ \arg -> FoldingRangeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/FoldingRangeRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON FoldingRangeRegistrationOptions where-  parseJSON = Aeson.withObject "FoldingRangeRegistrationOptions" $ \arg -> FoldingRangeRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "FoldingRangeRegistrationOptions" $ \arg -> FoldingRangeRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/FormattingOptions.hs view
@@ -60,4 +60,4 @@     ,"trimFinalNewlines" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON FormattingOptions where-  parseJSON = Aeson.withObject "FormattingOptions" $ \arg -> FormattingOptions <$> arg Aeson..: "tabSize" <*> arg Aeson..: "insertSpaces" <*> arg Aeson..:! "trimTrailingWhitespace" <*> arg Aeson..:! "insertFinalNewline" <*> arg Aeson..:! "trimFinalNewlines"+  parseJSON = Aeson.withObject "FormattingOptions" $ \arg -> FormattingOptions <$> arg Aeson..: "tabSize" <*> arg Aeson..: "insertSpaces" <*> arg Language.LSP.Protocol.Types.Common..:!? "trimTrailingWhitespace" <*> arg Language.LSP.Protocol.Types.Common..:!? "insertFinalNewline" <*> arg Language.LSP.Protocol.Types.Common..:!? "trimFinalNewlines"
generated/Language/LSP/Protocol/Internal/Types/FullDocumentDiagnosticReport.hs view
@@ -51,4 +51,4 @@     ,["items" Aeson..= arg2]]  instance Aeson.FromJSON FullDocumentDiagnosticReport where-  parseJSON = Aeson.withObject "FullDocumentDiagnosticReport" $ \arg -> FullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Aeson..:! "resultId" <*> arg Aeson..: "items"+  parseJSON = Aeson.withObject "FullDocumentDiagnosticReport" $ \arg -> FullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "resultId" <*> arg Aeson..: "items"
generated/Language/LSP/Protocol/Internal/Types/GeneralClientCapabilities.hs view
@@ -82,4 +82,4 @@     ,"positionEncodings" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON GeneralClientCapabilities where-  parseJSON = Aeson.withObject "GeneralClientCapabilities" $ \arg -> GeneralClientCapabilities <$> arg Aeson..:! "staleRequestSupport" <*> arg Aeson..:! "regularExpressions" <*> arg Aeson..:! "markdown" <*> arg Aeson..:! "positionEncodings"+  parseJSON = Aeson.withObject "GeneralClientCapabilities" $ \arg -> GeneralClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "staleRequestSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "regularExpressions" <*> arg Language.LSP.Protocol.Types.Common..:!? "markdown" <*> arg Language.LSP.Protocol.Types.Common..:!? "positionEncodings"
generated/Language/LSP/Protocol/Internal/Types/Hover.hs view
@@ -43,4 +43,4 @@     ,"range" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON Hover where-  parseJSON = Aeson.withObject "Hover" $ \arg -> Hover <$> arg Aeson..: "contents" <*> arg Aeson..:! "range"+  parseJSON = Aeson.withObject "Hover" $ \arg -> Hover <$> arg Aeson..: "contents" <*> arg Language.LSP.Protocol.Types.Common..:!? "range"
generated/Language/LSP/Protocol/Internal/Types/HoverClientCapabilities.hs view
@@ -41,4 +41,4 @@     ,"contentFormat" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON HoverClientCapabilities where-  parseJSON = Aeson.withObject "HoverClientCapabilities" $ \arg -> HoverClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "contentFormat"+  parseJSON = Aeson.withObject "HoverClientCapabilities" $ \arg -> HoverClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "contentFormat"
generated/Language/LSP/Protocol/Internal/Types/HoverOptions.hs view
@@ -34,4 +34,4 @@   toJSON (HoverOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON HoverOptions where-  parseJSON = Aeson.withObject "HoverOptions" $ \arg -> HoverOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "HoverOptions" $ \arg -> HoverOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/HoverParams.hs view
@@ -47,4 +47,4 @@     ,"workDoneToken" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON HoverParams where-  parseJSON = Aeson.withObject "HoverParams" $ \arg -> HoverParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "HoverParams" $ \arg -> HoverParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/HoverRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON HoverRegistrationOptions where-  parseJSON = Aeson.withObject "HoverRegistrationOptions" $ \arg -> HoverRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "HoverRegistrationOptions" $ \arg -> HoverRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/ImplementationClientCapabilities.hs view
@@ -43,4 +43,4 @@     ,"linkSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ImplementationClientCapabilities where-  parseJSON = Aeson.withObject "ImplementationClientCapabilities" $ \arg -> ImplementationClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "linkSupport"+  parseJSON = Aeson.withObject "ImplementationClientCapabilities" $ \arg -> ImplementationClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkSupport"
generated/Language/LSP/Protocol/Internal/Types/ImplementationOptions.hs view
@@ -34,4 +34,4 @@   toJSON (ImplementationOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON ImplementationOptions where-  parseJSON = Aeson.withObject "ImplementationOptions" $ \arg -> ImplementationOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "ImplementationOptions" $ \arg -> ImplementationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/ImplementationParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON ImplementationParams where-  parseJSON = Aeson.withObject "ImplementationParams" $ \arg -> ImplementationParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "ImplementationParams" $ \arg -> ImplementationParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/ImplementationRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ImplementationRegistrationOptions where-  parseJSON = Aeson.withObject "ImplementationRegistrationOptions" $ \arg -> ImplementationRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "ImplementationRegistrationOptions" $ \arg -> ImplementationRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/InitializeParams.hs view
@@ -113,4 +113,4 @@     ,"workspaceFolders" Language.LSP.Protocol.Types.Common..=? arg9]  instance Aeson.FromJSON InitializeParams where-  parseJSON = Aeson.withObject "InitializeParams" $ \arg -> InitializeParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "processId" <*> arg Aeson..:! "clientInfo" <*> arg Aeson..:! "locale" <*> arg Aeson..:! "rootPath" <*> arg Aeson..: "rootUri" <*> arg Aeson..: "capabilities" <*> arg Aeson..:! "initializationOptions" <*> arg Aeson..:! "trace" <*> arg Aeson..:! "workspaceFolders"+  parseJSON = Aeson.withObject "InitializeParams" $ \arg -> InitializeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "processId" <*> arg Language.LSP.Protocol.Types.Common..:!? "clientInfo" <*> arg Language.LSP.Protocol.Types.Common..:!? "locale" <*> arg Language.LSP.Protocol.Types.Common..:!? "rootPath" <*> arg Aeson..: "rootUri" <*> arg Aeson..: "capabilities" <*> arg Language.LSP.Protocol.Types.Common..:!? "initializationOptions" <*> arg Language.LSP.Protocol.Types.Common..:!? "trace" <*> arg Language.LSP.Protocol.Types.Common..:!? "workspaceFolders"
generated/Language/LSP/Protocol/Internal/Types/InitializeResult.hs view
@@ -44,4 +44,4 @@     ,"serverInfo" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON InitializeResult where-  parseJSON = Aeson.withObject "InitializeResult" $ \arg -> InitializeResult <$> arg Aeson..: "capabilities" <*> arg Aeson..:! "serverInfo"+  parseJSON = Aeson.withObject "InitializeResult" $ \arg -> InitializeResult <$> arg Aeson..: "capabilities" <*> arg Language.LSP.Protocol.Types.Common..:!? "serverInfo"
generated/Language/LSP/Protocol/Internal/Types/InlayHint.hs view
@@ -95,4 +95,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg7]  instance Aeson.FromJSON InlayHint where-  parseJSON = Aeson.withObject "InlayHint" $ \arg -> InlayHint <$> arg Aeson..: "position" <*> arg Aeson..: "label" <*> arg Aeson..:! "kind" <*> arg Aeson..:! "textEdits" <*> arg Aeson..:! "tooltip" <*> arg Aeson..:! "paddingLeft" <*> arg Aeson..:! "paddingRight" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "InlayHint" $ \arg -> InlayHint <$> arg Aeson..: "position" <*> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "textEdits" <*> arg Language.LSP.Protocol.Types.Common..:!? "tooltip" <*> arg Language.LSP.Protocol.Types.Common..:!? "paddingLeft" <*> arg Language.LSP.Protocol.Types.Common..:!? "paddingRight" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/InlayHintClientCapabilities.hs view
@@ -44,4 +44,4 @@     ,"resolveSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON InlayHintClientCapabilities where-  parseJSON = Aeson.withObject "InlayHintClientCapabilities" $ \arg -> InlayHintClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "resolveSupport"+  parseJSON = Aeson.withObject "InlayHintClientCapabilities" $ \arg -> InlayHintClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveSupport"
generated/Language/LSP/Protocol/Internal/Types/InlayHintKind.hs view
@@ -37,7 +37,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InlayHintKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InlayHintKind)   deriving Pretty via (ViaJSON InlayHintKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum InlayHintKind where
generated/Language/LSP/Protocol/Internal/Types/InlayHintLabelPart.hs view
@@ -71,4 +71,4 @@     ,"command" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON InlayHintLabelPart where-  parseJSON = Aeson.withObject "InlayHintLabelPart" $ \arg -> InlayHintLabelPart <$> arg Aeson..: "value" <*> arg Aeson..:! "tooltip" <*> arg Aeson..:! "location" <*> arg Aeson..:! "command"+  parseJSON = Aeson.withObject "InlayHintLabelPart" $ \arg -> InlayHintLabelPart <$> arg Aeson..: "value" <*> arg Language.LSP.Protocol.Types.Common..:!? "tooltip" <*> arg Language.LSP.Protocol.Types.Common..:!? "location" <*> arg Language.LSP.Protocol.Types.Common..:!? "command"
generated/Language/LSP/Protocol/Internal/Types/InlayHintOptions.hs view
@@ -42,4 +42,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON InlayHintOptions where-  parseJSON = Aeson.withObject "InlayHintOptions" $ \arg -> InlayHintOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "InlayHintOptions" $ \arg -> InlayHintOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/InlayHintParams.hs view
@@ -49,4 +49,4 @@     ,["range" Aeson..= arg2]]  instance Aeson.FromJSON InlayHintParams where-  parseJSON = Aeson.withObject "InlayHintParams" $ \arg -> InlayHintParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range"+  parseJSON = Aeson.withObject "InlayHintParams" $ \arg -> InlayHintParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range"
generated/Language/LSP/Protocol/Internal/Types/InlayHintRegistrationOptions.hs view
@@ -56,4 +56,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON InlayHintRegistrationOptions where-  parseJSON = Aeson.withObject "InlayHintRegistrationOptions" $ \arg -> InlayHintRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider" <*> arg Aeson..: "documentSelector" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "InlayHintRegistrationOptions" $ \arg -> InlayHintRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider" <*> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/InlayHintWorkspaceClientCapabilities.hs view
@@ -42,4 +42,4 @@   toJSON (InlayHintWorkspaceClientCapabilities arg0) = Aeson.object $ concat $  ["refreshSupport" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON InlayHintWorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "InlayHintWorkspaceClientCapabilities" $ \arg -> InlayHintWorkspaceClientCapabilities <$> arg Aeson..:! "refreshSupport"+  parseJSON = Aeson.withObject "InlayHintWorkspaceClientCapabilities" $ \arg -> InlayHintWorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "refreshSupport"
generated/Language/LSP/Protocol/Internal/Types/InlineValueClientCapabilities.hs view
@@ -36,4 +36,4 @@   toJSON (InlineValueClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON InlineValueClientCapabilities where-  parseJSON = Aeson.withObject "InlineValueClientCapabilities" $ \arg -> InlineValueClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "InlineValueClientCapabilities" $ \arg -> InlineValueClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/InlineValueEvaluatableExpression.hs view
@@ -46,4 +46,4 @@     ,"expression" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON InlineValueEvaluatableExpression where-  parseJSON = Aeson.withObject "InlineValueEvaluatableExpression" $ \arg -> InlineValueEvaluatableExpression <$> arg Aeson..: "range" <*> arg Aeson..:! "expression"+  parseJSON = Aeson.withObject "InlineValueEvaluatableExpression" $ \arg -> InlineValueEvaluatableExpression <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "expression"
generated/Language/LSP/Protocol/Internal/Types/InlineValueOptions.hs view
@@ -36,4 +36,4 @@   toJSON (InlineValueOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON InlineValueOptions where-  parseJSON = Aeson.withObject "InlineValueOptions" $ \arg -> InlineValueOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "InlineValueOptions" $ \arg -> InlineValueOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/InlineValueParams.hs view
@@ -56,4 +56,4 @@     ,["context" Aeson..= arg3]]  instance Aeson.FromJSON InlineValueParams where-  parseJSON = Aeson.withObject "InlineValueParams" $ \arg -> InlineValueParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "context"+  parseJSON = Aeson.withObject "InlineValueParams" $ \arg -> InlineValueParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range" <*> arg Aeson..: "context"
generated/Language/LSP/Protocol/Internal/Types/InlineValueRegistrationOptions.hs view
@@ -50,4 +50,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON InlineValueRegistrationOptions where-  parseJSON = Aeson.withObject "InlineValueRegistrationOptions" $ \arg -> InlineValueRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "InlineValueRegistrationOptions" $ \arg -> InlineValueRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/InlineValueVariableLookup.hs view
@@ -51,4 +51,4 @@     ,["caseSensitiveLookup" Aeson..= arg2]]  instance Aeson.FromJSON InlineValueVariableLookup where-  parseJSON = Aeson.withObject "InlineValueVariableLookup" $ \arg -> InlineValueVariableLookup <$> arg Aeson..: "range" <*> arg Aeson..:! "variableName" <*> arg Aeson..: "caseSensitiveLookup"+  parseJSON = Aeson.withObject "InlineValueVariableLookup" $ \arg -> InlineValueVariableLookup <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "variableName" <*> arg Aeson..: "caseSensitiveLookup"
generated/Language/LSP/Protocol/Internal/Types/InlineValueWorkspaceClientCapabilities.hs view
@@ -42,4 +42,4 @@   toJSON (InlineValueWorkspaceClientCapabilities arg0) = Aeson.object $ concat $  ["refreshSupport" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON InlineValueWorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "InlineValueWorkspaceClientCapabilities" $ \arg -> InlineValueWorkspaceClientCapabilities <$> arg Aeson..:! "refreshSupport"+  parseJSON = Aeson.withObject "InlineValueWorkspaceClientCapabilities" $ \arg -> InlineValueWorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "refreshSupport"
generated/Language/LSP/Protocol/Internal/Types/InsertTextFormat.hs view
@@ -43,7 +43,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InsertTextFormat Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InsertTextFormat)   deriving Pretty via (ViaJSON InsertTextFormat)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum InsertTextFormat where
generated/Language/LSP/Protocol/Internal/Types/InsertTextMode.hs view
@@ -48,7 +48,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InsertTextMode Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum InsertTextMode)   deriving Pretty via (ViaJSON InsertTextMode)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum InsertTextMode where
generated/Language/LSP/Protocol/Internal/Types/LSPErrorCodes.hs view
@@ -61,7 +61,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum LSPErrorCodes Language.LSP.Protocol.Types.Common.Int32)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum LSPErrorCodes)   deriving Pretty via (ViaJSON LSPErrorCodes)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum LSPErrorCodes where
generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeClientCapabilities.hs view
@@ -38,4 +38,4 @@   toJSON (LinkedEditingRangeClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON LinkedEditingRangeClientCapabilities where-  parseJSON = Aeson.withObject "LinkedEditingRangeClientCapabilities" $ \arg -> LinkedEditingRangeClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "LinkedEditingRangeClientCapabilities" $ \arg -> LinkedEditingRangeClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeOptions.hs view
@@ -34,4 +34,4 @@   toJSON (LinkedEditingRangeOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON LinkedEditingRangeOptions where-  parseJSON = Aeson.withObject "LinkedEditingRangeOptions" $ \arg -> LinkedEditingRangeOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "LinkedEditingRangeOptions" $ \arg -> LinkedEditingRangeOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeParams.hs view
@@ -47,4 +47,4 @@     ,"workDoneToken" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON LinkedEditingRangeParams where-  parseJSON = Aeson.withObject "LinkedEditingRangeParams" $ \arg -> LinkedEditingRangeParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "LinkedEditingRangeParams" $ \arg -> LinkedEditingRangeParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON LinkedEditingRangeRegistrationOptions where-  parseJSON = Aeson.withObject "LinkedEditingRangeRegistrationOptions" $ \arg -> LinkedEditingRangeRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "LinkedEditingRangeRegistrationOptions" $ \arg -> LinkedEditingRangeRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRanges.hs view
@@ -46,4 +46,4 @@     ,"wordPattern" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON LinkedEditingRanges where-  parseJSON = Aeson.withObject "LinkedEditingRanges" $ \arg -> LinkedEditingRanges <$> arg Aeson..: "ranges" <*> arg Aeson..:! "wordPattern"+  parseJSON = Aeson.withObject "LinkedEditingRanges" $ \arg -> LinkedEditingRanges <$> arg Aeson..: "ranges" <*> arg Language.LSP.Protocol.Types.Common..:!? "wordPattern"
generated/Language/LSP/Protocol/Internal/Types/LocationLink.hs view
@@ -58,4 +58,4 @@     ,["targetSelectionRange" Aeson..= arg3]]  instance Aeson.FromJSON LocationLink where-  parseJSON = Aeson.withObject "LocationLink" $ \arg -> LocationLink <$> arg Aeson..:! "originSelectionRange" <*> arg Aeson..: "targetUri" <*> arg Aeson..: "targetRange" <*> arg Aeson..: "targetSelectionRange"+  parseJSON = Aeson.withObject "LocationLink" $ \arg -> LocationLink <$> arg Language.LSP.Protocol.Types.Common..:!? "originSelectionRange" <*> arg Aeson..: "targetUri" <*> arg Aeson..: "targetRange" <*> arg Aeson..: "targetSelectionRange"
generated/Language/LSP/Protocol/Internal/Types/LogTraceParams.hs view
@@ -40,4 +40,4 @@     ,"verbose" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON LogTraceParams where-  parseJSON = Aeson.withObject "LogTraceParams" $ \arg -> LogTraceParams <$> arg Aeson..: "message" <*> arg Aeson..:! "verbose"+  parseJSON = Aeson.withObject "LogTraceParams" $ \arg -> LogTraceParams <$> arg Aeson..: "message" <*> arg Language.LSP.Protocol.Types.Common..:!? "verbose"
generated/Language/LSP/Protocol/Internal/Types/MarkdownClientCapabilities.hs view
@@ -50,4 +50,4 @@     ,"allowedTags" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON MarkdownClientCapabilities where-  parseJSON = Aeson.withObject "MarkdownClientCapabilities" $ \arg -> MarkdownClientCapabilities <$> arg Aeson..: "parser" <*> arg Aeson..:! "version" <*> arg Aeson..:! "allowedTags"+  parseJSON = Aeson.withObject "MarkdownClientCapabilities" $ \arg -> MarkdownClientCapabilities <$> arg Aeson..: "parser" <*> arg Language.LSP.Protocol.Types.Common..:!? "version" <*> arg Language.LSP.Protocol.Types.Common..:!? "allowedTags"
generated/Language/LSP/Protocol/Internal/Types/MarkupKind.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MarkupKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MarkupKind)   deriving Pretty via (ViaJSON MarkupKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum MarkupKind where
generated/Language/LSP/Protocol/Internal/Types/MessageType.hs view
@@ -43,7 +43,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MessageType Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MessageType)   deriving Pretty via (ViaJSON MessageType)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum MessageType where
generated/Language/LSP/Protocol/Internal/Types/Moniker.hs view
@@ -55,4 +55,4 @@     ,"kind" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON Moniker where-  parseJSON = Aeson.withObject "Moniker" $ \arg -> Moniker <$> arg Aeson..: "scheme" <*> arg Aeson..: "identifier" <*> arg Aeson..: "unique" <*> arg Aeson..:! "kind"+  parseJSON = Aeson.withObject "Moniker" $ \arg -> Moniker <$> arg Aeson..: "scheme" <*> arg Aeson..: "identifier" <*> arg Aeson..: "unique" <*> arg Language.LSP.Protocol.Types.Common..:!? "kind"
generated/Language/LSP/Protocol/Internal/Types/MonikerClientCapabilities.hs view
@@ -38,4 +38,4 @@   toJSON (MonikerClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON MonikerClientCapabilities where-  parseJSON = Aeson.withObject "MonikerClientCapabilities" $ \arg -> MonikerClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "MonikerClientCapabilities" $ \arg -> MonikerClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/MonikerKind.hs view
@@ -42,7 +42,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MonikerKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum MonikerKind)   deriving Pretty via (ViaJSON MonikerKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum MonikerKind where
generated/Language/LSP/Protocol/Internal/Types/MonikerOptions.hs view
@@ -34,4 +34,4 @@   toJSON (MonikerOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON MonikerOptions where-  parseJSON = Aeson.withObject "MonikerOptions" $ \arg -> MonikerOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "MonikerOptions" $ \arg -> MonikerOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/MonikerParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON MonikerParams where-  parseJSON = Aeson.withObject "MonikerParams" $ \arg -> MonikerParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "MonikerParams" $ \arg -> MonikerParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/MonikerRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON MonikerRegistrationOptions where-  parseJSON = Aeson.withObject "MonikerRegistrationOptions" $ \arg -> MonikerRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "MonikerRegistrationOptions" $ \arg -> MonikerRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/NotebookCell.hs view
@@ -63,4 +63,4 @@     ,"executionSummary" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON NotebookCell where-  parseJSON = Aeson.withObject "NotebookCell" $ \arg -> NotebookCell <$> arg Aeson..: "kind" <*> arg Aeson..: "document" <*> arg Aeson..:! "metadata" <*> arg Aeson..:! "executionSummary"+  parseJSON = Aeson.withObject "NotebookCell" $ \arg -> NotebookCell <$> arg Aeson..: "kind" <*> arg Aeson..: "document" <*> arg Language.LSP.Protocol.Types.Common..:!? "metadata" <*> arg Language.LSP.Protocol.Types.Common..:!? "executionSummary"
generated/Language/LSP/Protocol/Internal/Types/NotebookCellArrayChange.hs view
@@ -48,4 +48,4 @@     ,"cells" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON NotebookCellArrayChange where-  parseJSON = Aeson.withObject "NotebookCellArrayChange" $ \arg -> NotebookCellArrayChange <$> arg Aeson..: "start" <*> arg Aeson..: "deleteCount" <*> arg Aeson..:! "cells"+  parseJSON = Aeson.withObject "NotebookCellArrayChange" $ \arg -> NotebookCellArrayChange <$> arg Aeson..: "start" <*> arg Aeson..: "deleteCount" <*> arg Language.LSP.Protocol.Types.Common..:!? "cells"
generated/Language/LSP/Protocol/Internal/Types/NotebookCellKind.hs view
@@ -37,7 +37,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum NotebookCellKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum NotebookCellKind)   deriving Pretty via (ViaJSON NotebookCellKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum NotebookCellKind where
generated/Language/LSP/Protocol/Internal/Types/NotebookCellTextDocumentFilter.hs view
@@ -50,4 +50,4 @@     ,"language" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON NotebookCellTextDocumentFilter where-  parseJSON = Aeson.withObject "NotebookCellTextDocumentFilter" $ \arg -> NotebookCellTextDocumentFilter <$> arg Aeson..: "notebook" <*> arg Aeson..:! "language"+  parseJSON = Aeson.withObject "NotebookCellTextDocumentFilter" $ \arg -> NotebookCellTextDocumentFilter <$> arg Aeson..: "notebook" <*> arg Language.LSP.Protocol.Types.Common..:!? "language"
generated/Language/LSP/Protocol/Internal/Types/NotebookDocument.hs view
@@ -64,4 +64,4 @@     ,["cells" Aeson..= arg4]]  instance Aeson.FromJSON NotebookDocument where-  parseJSON = Aeson.withObject "NotebookDocument" $ \arg -> NotebookDocument <$> arg Aeson..: "uri" <*> arg Aeson..: "notebookType" <*> arg Aeson..: "version" <*> arg Aeson..:! "metadata" <*> arg Aeson..: "cells"+  parseJSON = Aeson.withObject "NotebookDocument" $ \arg -> NotebookDocument <$> arg Aeson..: "uri" <*> arg Aeson..: "notebookType" <*> arg Aeson..: "version" <*> arg Language.LSP.Protocol.Types.Common..:!? "metadata" <*> arg Aeson..: "cells"
generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentChangeEvent.hs view
@@ -51,4 +51,4 @@     ,"cells" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON NotebookDocumentChangeEvent where-  parseJSON = Aeson.withObject "NotebookDocumentChangeEvent" $ \arg -> NotebookDocumentChangeEvent <$> arg Aeson..:! "metadata" <*> arg Aeson..:! "cells"+  parseJSON = Aeson.withObject "NotebookDocumentChangeEvent" $ \arg -> NotebookDocumentChangeEvent <$> arg Language.LSP.Protocol.Types.Common..:!? "metadata" <*> arg Language.LSP.Protocol.Types.Common..:!? "cells"
generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncClientCapabilities.hs view
@@ -44,4 +44,4 @@     ,"executionSummarySupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON NotebookDocumentSyncClientCapabilities where-  parseJSON = Aeson.withObject "NotebookDocumentSyncClientCapabilities" $ \arg -> NotebookDocumentSyncClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "executionSummarySupport"+  parseJSON = Aeson.withObject "NotebookDocumentSyncClientCapabilities" $ \arg -> NotebookDocumentSyncClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "executionSummarySupport"
generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncOptions.hs view
@@ -55,4 +55,4 @@     ,"save" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON NotebookDocumentSyncOptions where-  parseJSON = Aeson.withObject "NotebookDocumentSyncOptions" $ \arg -> NotebookDocumentSyncOptions <$> arg Aeson..: "notebookSelector" <*> arg Aeson..:! "save"+  parseJSON = Aeson.withObject "NotebookDocumentSyncOptions" $ \arg -> NotebookDocumentSyncOptions <$> arg Aeson..: "notebookSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "save"
generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncRegistrationOptions.hs view
@@ -51,4 +51,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON NotebookDocumentSyncRegistrationOptions where-  parseJSON = Aeson.withObject "NotebookDocumentSyncRegistrationOptions" $ \arg -> NotebookDocumentSyncRegistrationOptions <$> arg Aeson..: "notebookSelector" <*> arg Aeson..:! "save" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "NotebookDocumentSyncRegistrationOptions" $ \arg -> NotebookDocumentSyncRegistrationOptions <$> arg Aeson..: "notebookSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "save" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/ParameterInformation.hs view
@@ -51,4 +51,4 @@     ,"documentation" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ParameterInformation where-  parseJSON = Aeson.withObject "ParameterInformation" $ \arg -> ParameterInformation <$> arg Aeson..: "label" <*> arg Aeson..:! "documentation"+  parseJSON = Aeson.withObject "ParameterInformation" $ \arg -> ParameterInformation <$> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentation"
generated/Language/LSP/Protocol/Internal/Types/PartialResultParams.hs view
@@ -36,4 +36,4 @@   toJSON (PartialResultParams arg0) = Aeson.object $ concat $  ["partialResultToken" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON PartialResultParams where-  parseJSON = Aeson.withObject "PartialResultParams" $ \arg -> PartialResultParams <$> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "PartialResultParams" $ \arg -> PartialResultParams <$> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/PositionEncodingKind.hs view
@@ -50,7 +50,7 @@   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON   , Aeson.FromJSON-  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum PositionEncodingKind Data.Text.Text)+  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum PositionEncodingKind)   deriving Pretty via (ViaJSON PositionEncodingKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum PositionEncodingKind where
generated/Language/LSP/Protocol/Internal/Types/PrepareRenameParams.hs view
@@ -47,4 +47,4 @@     ,"workDoneToken" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON PrepareRenameParams where-  parseJSON = Aeson.withObject "PrepareRenameParams" $ \arg -> PrepareRenameParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "PrepareRenameParams" $ \arg -> PrepareRenameParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/PrepareSupportDefaultBehavior.hs view
@@ -32,7 +32,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum PrepareSupportDefaultBehavior Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum PrepareSupportDefaultBehavior)   deriving Pretty via (ViaJSON PrepareSupportDefaultBehavior)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum PrepareSupportDefaultBehavior where
generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsClientCapabilities.hs view
@@ -68,4 +68,4 @@     ,"dataSupport" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON PublishDiagnosticsClientCapabilities where-  parseJSON = Aeson.withObject "PublishDiagnosticsClientCapabilities" $ \arg -> PublishDiagnosticsClientCapabilities <$> arg Aeson..:! "relatedInformation" <*> arg Aeson..:! "tagSupport" <*> arg Aeson..:! "versionSupport" <*> arg Aeson..:! "codeDescriptionSupport" <*> arg Aeson..:! "dataSupport"+  parseJSON = Aeson.withObject "PublishDiagnosticsClientCapabilities" $ \arg -> PublishDiagnosticsClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "relatedInformation" <*> arg Language.LSP.Protocol.Types.Common..:!? "tagSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "versionSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeDescriptionSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "dataSupport"
generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsParams.hs view
@@ -48,4 +48,4 @@     ,["diagnostics" Aeson..= arg2]]  instance Aeson.FromJSON PublishDiagnosticsParams where-  parseJSON = Aeson.withObject "PublishDiagnosticsParams" $ \arg -> PublishDiagnosticsParams <$> arg Aeson..: "uri" <*> arg Aeson..:! "version" <*> arg Aeson..: "diagnostics"+  parseJSON = Aeson.withObject "PublishDiagnosticsParams" $ \arg -> PublishDiagnosticsParams <$> arg Aeson..: "uri" <*> arg Language.LSP.Protocol.Types.Common..:!? "version" <*> arg Aeson..: "diagnostics"
generated/Language/LSP/Protocol/Internal/Types/ReferenceClientCapabilities.hs view
@@ -34,4 +34,4 @@   toJSON (ReferenceClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON ReferenceClientCapabilities where-  parseJSON = Aeson.withObject "ReferenceClientCapabilities" $ \arg -> ReferenceClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "ReferenceClientCapabilities" $ \arg -> ReferenceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/ReferenceOptions.hs view
@@ -34,4 +34,4 @@   toJSON (ReferenceOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON ReferenceOptions where-  parseJSON = Aeson.withObject "ReferenceOptions" $ \arg -> ReferenceOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "ReferenceOptions" $ \arg -> ReferenceOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/ReferenceParams.hs view
@@ -59,4 +59,4 @@     ,["context" Aeson..= arg4]]  instance Aeson.FromJSON ReferenceParams where-  parseJSON = Aeson.withObject "ReferenceParams" $ \arg -> ReferenceParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "context"+  parseJSON = Aeson.withObject "ReferenceParams" $ \arg -> ReferenceParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "context"
generated/Language/LSP/Protocol/Internal/Types/ReferenceRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ReferenceRegistrationOptions where-  parseJSON = Aeson.withObject "ReferenceRegistrationOptions" $ \arg -> ReferenceRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "ReferenceRegistrationOptions" $ \arg -> ReferenceRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/Registration.hs view
@@ -47,4 +47,4 @@     ,"registerOptions" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON Registration where-  parseJSON = Aeson.withObject "Registration" $ \arg -> Registration <$> arg Aeson..: "id" <*> arg Aeson..: "method" <*> arg Aeson..:! "registerOptions"+  parseJSON = Aeson.withObject "Registration" $ \arg -> Registration <$> arg Aeson..: "id" <*> arg Aeson..: "method" <*> arg Language.LSP.Protocol.Types.Common..:!? "registerOptions"
generated/Language/LSP/Protocol/Internal/Types/RegularExpressionsClientCapabilities.hs view
@@ -42,4 +42,4 @@     ,"version" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON RegularExpressionsClientCapabilities where-  parseJSON = Aeson.withObject "RegularExpressionsClientCapabilities" $ \arg -> RegularExpressionsClientCapabilities <$> arg Aeson..: "engine" <*> arg Aeson..:! "version"+  parseJSON = Aeson.withObject "RegularExpressionsClientCapabilities" $ \arg -> RegularExpressionsClientCapabilities <$> arg Aeson..: "engine" <*> arg Language.LSP.Protocol.Types.Common..:!? "version"
generated/Language/LSP/Protocol/Internal/Types/RelatedFullDocumentDiagnosticReport.hs view
@@ -66,4 +66,4 @@     ,"relatedDocuments" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON RelatedFullDocumentDiagnosticReport where-  parseJSON = Aeson.withObject "RelatedFullDocumentDiagnosticReport" $ \arg -> RelatedFullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Aeson..:! "resultId" <*> arg Aeson..: "items" <*> arg Aeson..:! "relatedDocuments"+  parseJSON = Aeson.withObject "RelatedFullDocumentDiagnosticReport" $ \arg -> RelatedFullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "resultId" <*> arg Aeson..: "items" <*> arg Language.LSP.Protocol.Types.Common..:!? "relatedDocuments"
generated/Language/LSP/Protocol/Internal/Types/RelatedUnchangedDocumentDiagnosticReport.hs view
@@ -62,4 +62,4 @@     ,"relatedDocuments" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON RelatedUnchangedDocumentDiagnosticReport where-  parseJSON = Aeson.withObject "RelatedUnchangedDocumentDiagnosticReport" $ \arg -> RelatedUnchangedDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Aeson..: "resultId" <*> arg Aeson..:! "relatedDocuments"+  parseJSON = Aeson.withObject "RelatedUnchangedDocumentDiagnosticReport" $ \arg -> RelatedUnchangedDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Aeson..: "resultId" <*> arg Language.LSP.Protocol.Types.Common..:!? "relatedDocuments"
generated/Language/LSP/Protocol/Internal/Types/RenameClientCapabilities.hs view
@@ -64,4 +64,4 @@     ,"honorsChangeAnnotations" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON RenameClientCapabilities where-  parseJSON = Aeson.withObject "RenameClientCapabilities" $ \arg -> RenameClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "prepareSupport" <*> arg Aeson..:! "prepareSupportDefaultBehavior" <*> arg Aeson..:! "honorsChangeAnnotations"+  parseJSON = Aeson.withObject "RenameClientCapabilities" $ \arg -> RenameClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "prepareSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "prepareSupportDefaultBehavior" <*> arg Language.LSP.Protocol.Types.Common..:!? "honorsChangeAnnotations"
generated/Language/LSP/Protocol/Internal/Types/RenameFile.hs view
@@ -60,4 +60,4 @@     ,"options" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON RenameFile where-  parseJSON = Aeson.withObject "RenameFile" $ \arg -> RenameFile <$> arg Aeson..:! "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "oldUri" <*> arg Aeson..: "newUri" <*> arg Aeson..:! "options"+  parseJSON = Aeson.withObject "RenameFile" $ \arg -> RenameFile <$> arg Language.LSP.Protocol.Types.Common..:!? "annotationId" <*> arg Aeson..: "kind" <*> arg Aeson..: "oldUri" <*> arg Aeson..: "newUri" <*> arg Language.LSP.Protocol.Types.Common..:!? "options"
generated/Language/LSP/Protocol/Internal/Types/RenameFileOptions.hs view
@@ -39,4 +39,4 @@     ,"ignoreIfExists" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON RenameFileOptions where-  parseJSON = Aeson.withObject "RenameFileOptions" $ \arg -> RenameFileOptions <$> arg Aeson..:! "overwrite" <*> arg Aeson..:! "ignoreIfExists"+  parseJSON = Aeson.withObject "RenameFileOptions" $ \arg -> RenameFileOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "overwrite" <*> arg Language.LSP.Protocol.Types.Common..:!? "ignoreIfExists"
generated/Language/LSP/Protocol/Internal/Types/RenameOptions.hs view
@@ -41,4 +41,4 @@     ,"prepareProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON RenameOptions where-  parseJSON = Aeson.withObject "RenameOptions" $ \arg -> RenameOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "prepareProvider"+  parseJSON = Aeson.withObject "RenameOptions" $ \arg -> RenameOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "prepareProvider"
generated/Language/LSP/Protocol/Internal/Types/RenameParams.hs view
@@ -55,4 +55,4 @@     ,["newName" Aeson..= arg3]]  instance Aeson.FromJSON RenameParams where-  parseJSON = Aeson.withObject "RenameParams" $ \arg -> RenameParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..: "newName"+  parseJSON = Aeson.withObject "RenameParams" $ \arg -> RenameParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..: "newName"
generated/Language/LSP/Protocol/Internal/Types/RenameRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"prepareProvider" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON RenameRegistrationOptions where-  parseJSON = Aeson.withObject "RenameRegistrationOptions" $ \arg -> RenameRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "prepareProvider"+  parseJSON = Aeson.withObject "RenameRegistrationOptions" $ \arg -> RenameRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "prepareProvider"
generated/Language/LSP/Protocol/Internal/Types/ResourceOperation.hs view
@@ -43,4 +43,4 @@     ,"annotationId" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON ResourceOperation where-  parseJSON = Aeson.withObject "ResourceOperation" $ \arg -> ResourceOperation <$> arg Aeson..: "kind" <*> arg Aeson..:! "annotationId"+  parseJSON = Aeson.withObject "ResourceOperation" $ \arg -> ResourceOperation <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "annotationId"
generated/Language/LSP/Protocol/Internal/Types/ResourceOperationKind.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum ResourceOperationKind Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum ResourceOperationKind)   deriving Pretty via (ViaJSON ResourceOperationKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum ResourceOperationKind where
generated/Language/LSP/Protocol/Internal/Types/SaveOptions.hs view
@@ -34,4 +34,4 @@   toJSON (SaveOptions arg0) = Aeson.object $ concat $  ["includeText" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON SaveOptions where-  parseJSON = Aeson.withObject "SaveOptions" $ \arg -> SaveOptions <$> arg Aeson..:! "includeText"+  parseJSON = Aeson.withObject "SaveOptions" $ \arg -> SaveOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "includeText"
generated/Language/LSP/Protocol/Internal/Types/SelectionRange.hs view
@@ -41,4 +41,4 @@     ,"parent" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON SelectionRange where-  parseJSON = Aeson.withObject "SelectionRange" $ \arg -> SelectionRange <$> arg Aeson..: "range" <*> arg Aeson..:! "parent"+  parseJSON = Aeson.withObject "SelectionRange" $ \arg -> SelectionRange <$> arg Aeson..: "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "parent"
generated/Language/LSP/Protocol/Internal/Types/SelectionRangeClientCapabilities.hs view
@@ -36,4 +36,4 @@   toJSON (SelectionRangeClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON SelectionRangeClientCapabilities where-  parseJSON = Aeson.withObject "SelectionRangeClientCapabilities" $ \arg -> SelectionRangeClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "SelectionRangeClientCapabilities" $ \arg -> SelectionRangeClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/SelectionRangeOptions.hs view
@@ -34,4 +34,4 @@   toJSON (SelectionRangeOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON SelectionRangeOptions where-  parseJSON = Aeson.withObject "SelectionRangeOptions" $ \arg -> SelectionRangeOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "SelectionRangeOptions" $ \arg -> SelectionRangeOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/SelectionRangeParams.hs view
@@ -53,4 +53,4 @@     ,["positions" Aeson..= arg3]]  instance Aeson.FromJSON SelectionRangeParams where-  parseJSON = Aeson.withObject "SelectionRangeParams" $ \arg -> SelectionRangeParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "positions"+  parseJSON = Aeson.withObject "SelectionRangeParams" $ \arg -> SelectionRangeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "positions"
generated/Language/LSP/Protocol/Internal/Types/SelectionRangeRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON SelectionRangeRegistrationOptions where-  parseJSON = Aeson.withObject "SelectionRangeRegistrationOptions" $ \arg -> SelectionRangeRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "SelectionRangeRegistrationOptions" $ \arg -> SelectionRangeRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokenModifiers.hs view
@@ -73,7 +73,7 @@   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON   , Aeson.FromJSON-  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SemanticTokenModifiers Data.Text.Text)+  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SemanticTokenModifiers)   deriving Pretty via (ViaJSON SemanticTokenModifiers)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum SemanticTokenModifiers where
generated/Language/LSP/Protocol/Internal/Types/SemanticTokenTypes.hs view
@@ -126,7 +126,7 @@   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON   , Aeson.FromJSON-  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SemanticTokenTypes Data.Text.Text)+  , Data.String.IsString ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SemanticTokenTypes)   deriving Pretty via (ViaJSON SemanticTokenTypes)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum SemanticTokenTypes where
generated/Language/LSP/Protocol/Internal/Types/SemanticTokens.hs view
@@ -43,4 +43,4 @@     ,["data" Aeson..= arg1]]  instance Aeson.FromJSON SemanticTokens where-  parseJSON = Aeson.withObject "SemanticTokens" $ \arg -> SemanticTokens <$> arg Aeson..:! "resultId" <*> arg Aeson..: "data"+  parseJSON = Aeson.withObject "SemanticTokens" $ \arg -> SemanticTokens <$> arg Language.LSP.Protocol.Types.Common..:!? "resultId" <*> arg Aeson..: "data"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensClientCapabilities.hs view
@@ -100,4 +100,4 @@     ,"augmentsSyntaxTokens" Language.LSP.Protocol.Types.Common..=? arg8]  instance Aeson.FromJSON SemanticTokensClientCapabilities where-  parseJSON = Aeson.withObject "SemanticTokensClientCapabilities" $ \arg -> SemanticTokensClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..: "requests" <*> arg Aeson..: "tokenTypes" <*> arg Aeson..: "tokenModifiers" <*> arg Aeson..: "formats" <*> arg Aeson..:! "overlappingTokenSupport" <*> arg Aeson..:! "multilineTokenSupport" <*> arg Aeson..:! "serverCancelSupport" <*> arg Aeson..:! "augmentsSyntaxTokens"+  parseJSON = Aeson.withObject "SemanticTokensClientCapabilities" $ \arg -> SemanticTokensClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Aeson..: "requests" <*> arg Aeson..: "tokenTypes" <*> arg Aeson..: "tokenModifiers" <*> arg Aeson..: "formats" <*> arg Language.LSP.Protocol.Types.Common..:!? "overlappingTokenSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "multilineTokenSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "serverCancelSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "augmentsSyntaxTokens"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDelta.hs view
@@ -41,4 +41,4 @@     ,["edits" Aeson..= arg1]]  instance Aeson.FromJSON SemanticTokensDelta where-  parseJSON = Aeson.withObject "SemanticTokensDelta" $ \arg -> SemanticTokensDelta <$> arg Aeson..:! "resultId" <*> arg Aeson..: "edits"+  parseJSON = Aeson.withObject "SemanticTokensDelta" $ \arg -> SemanticTokensDelta <$> arg Language.LSP.Protocol.Types.Common..:!? "resultId" <*> arg Aeson..: "edits"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDeltaParams.hs view
@@ -54,4 +54,4 @@     ,["previousResultId" Aeson..= arg3]]  instance Aeson.FromJSON SemanticTokensDeltaParams where-  parseJSON = Aeson.withObject "SemanticTokensDeltaParams" $ \arg -> SemanticTokensDeltaParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "previousResultId"+  parseJSON = Aeson.withObject "SemanticTokensDeltaParams" $ \arg -> SemanticTokensDeltaParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "previousResultId"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensEdit.hs view
@@ -44,4 +44,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON SemanticTokensEdit where-  parseJSON = Aeson.withObject "SemanticTokensEdit" $ \arg -> SemanticTokensEdit <$> arg Aeson..: "start" <*> arg Aeson..: "deleteCount" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "SemanticTokensEdit" $ \arg -> SemanticTokensEdit <$> arg Aeson..: "start" <*> arg Aeson..: "deleteCount" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensOptions.hs view
@@ -52,4 +52,4 @@     ,"full" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON SemanticTokensOptions where-  parseJSON = Aeson.withObject "SemanticTokensOptions" $ \arg -> SemanticTokensOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "legend" <*> arg Aeson..:! "range" <*> arg Aeson..:! "full"+  parseJSON = Aeson.withObject "SemanticTokensOptions" $ \arg -> SemanticTokensOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "legend" <*> arg Language.LSP.Protocol.Types.Common..:!? "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "full"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensParams.hs view
@@ -47,4 +47,4 @@     ,["textDocument" Aeson..= arg2]]  instance Aeson.FromJSON SemanticTokensParams where-  parseJSON = Aeson.withObject "SemanticTokensParams" $ \arg -> SemanticTokensParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument"+  parseJSON = Aeson.withObject "SemanticTokensParams" $ \arg -> SemanticTokensParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRangeParams.hs view
@@ -53,4 +53,4 @@     ,["range" Aeson..= arg3]]  instance Aeson.FromJSON SemanticTokensRangeParams where-  parseJSON = Aeson.withObject "SemanticTokensRangeParams" $ \arg -> SemanticTokensRangeParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range"+  parseJSON = Aeson.withObject "SemanticTokensRangeParams" $ \arg -> SemanticTokensRangeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "textDocument" <*> arg Aeson..: "range"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRegistrationOptions.hs view
@@ -66,4 +66,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON SemanticTokensRegistrationOptions where-  parseJSON = Aeson.withObject "SemanticTokensRegistrationOptions" $ \arg -> SemanticTokensRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..: "legend" <*> arg Aeson..:! "range" <*> arg Aeson..:! "full" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "SemanticTokensRegistrationOptions" $ \arg -> SemanticTokensRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Aeson..: "legend" <*> arg Language.LSP.Protocol.Types.Common..:!? "range" <*> arg Language.LSP.Protocol.Types.Common..:!? "full" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/SemanticTokensWorkspaceClientCapabilities.hs view
@@ -40,4 +40,4 @@   toJSON (SemanticTokensWorkspaceClientCapabilities arg0) = Aeson.object $ concat $  ["refreshSupport" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON SemanticTokensWorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "SemanticTokensWorkspaceClientCapabilities" $ \arg -> SemanticTokensWorkspaceClientCapabilities <$> arg Aeson..:! "refreshSupport"+  parseJSON = Aeson.withObject "SemanticTokensWorkspaceClientCapabilities" $ \arg -> SemanticTokensWorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "refreshSupport"
generated/Language/LSP/Protocol/Internal/Types/ServerCapabilities.hs view
@@ -290,4 +290,4 @@     ,"experimental" Language.LSP.Protocol.Types.Common..=? arg34]  instance Aeson.FromJSON ServerCapabilities where-  parseJSON = Aeson.withObject "ServerCapabilities" $ \arg -> ServerCapabilities <$> arg Aeson..:! "positionEncoding" <*> arg Aeson..:! "textDocumentSync" <*> arg Aeson..:! "notebookDocumentSync" <*> arg Aeson..:! "completionProvider" <*> arg Aeson..:! "hoverProvider" <*> arg Aeson..:! "signatureHelpProvider" <*> arg Aeson..:! "declarationProvider" <*> arg Aeson..:! "definitionProvider" <*> arg Aeson..:! "typeDefinitionProvider" <*> arg Aeson..:! "implementationProvider" <*> arg Aeson..:! "referencesProvider" <*> arg Aeson..:! "documentHighlightProvider" <*> arg Aeson..:! "documentSymbolProvider" <*> arg Aeson..:! "codeActionProvider" <*> arg Aeson..:! "codeLensProvider" <*> arg Aeson..:! "documentLinkProvider" <*> arg Aeson..:! "colorProvider" <*> arg Aeson..:! "workspaceSymbolProvider" <*> arg Aeson..:! "documentFormattingProvider" <*> arg Aeson..:! "documentRangeFormattingProvider" <*> arg Aeson..:! "documentOnTypeFormattingProvider" <*> arg Aeson..:! "renameProvider" <*> arg Aeson..:! "foldingRangeProvider" <*> arg Aeson..:! "selectionRangeProvider" <*> arg Aeson..:! "executeCommandProvider" <*> arg Aeson..:! "callHierarchyProvider" <*> arg Aeson..:! "linkedEditingRangeProvider" <*> arg Aeson..:! "semanticTokensProvider" <*> arg Aeson..:! "monikerProvider" <*> arg Aeson..:! "typeHierarchyProvider" <*> arg Aeson..:! "inlineValueProvider" <*> arg Aeson..:! "inlayHintProvider" <*> arg Aeson..:! "diagnosticProvider" <*> arg Aeson..:! "workspace" <*> arg Aeson..:! "experimental"+  parseJSON = Aeson.withObject "ServerCapabilities" $ \arg -> ServerCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "positionEncoding" <*> arg Language.LSP.Protocol.Types.Common..:!? "textDocumentSync" <*> arg Language.LSP.Protocol.Types.Common..:!? "notebookDocumentSync" <*> arg Language.LSP.Protocol.Types.Common..:!? "completionProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "hoverProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "signatureHelpProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "declarationProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "definitionProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "typeDefinitionProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "implementationProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "referencesProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentHighlightProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentSymbolProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeActionProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeLensProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentLinkProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "colorProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "workspaceSymbolProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentFormattingProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentRangeFormattingProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentOnTypeFormattingProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "renameProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "foldingRangeProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "selectionRangeProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "executeCommandProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "callHierarchyProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkedEditingRangeProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "semanticTokensProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "monikerProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "typeHierarchyProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlineValueProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlayHintProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "diagnosticProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "workspace" <*> arg Language.LSP.Protocol.Types.Common..:!? "experimental"
generated/Language/LSP/Protocol/Internal/Types/ShowDocumentParams.hs view
@@ -61,4 +61,4 @@     ,"selection" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON ShowDocumentParams where-  parseJSON = Aeson.withObject "ShowDocumentParams" $ \arg -> ShowDocumentParams <$> arg Aeson..: "uri" <*> arg Aeson..:! "external" <*> arg Aeson..:! "takeFocus" <*> arg Aeson..:! "selection"+  parseJSON = Aeson.withObject "ShowDocumentParams" $ \arg -> ShowDocumentParams <$> arg Aeson..: "uri" <*> arg Language.LSP.Protocol.Types.Common..:!? "external" <*> arg Language.LSP.Protocol.Types.Common..:!? "takeFocus" <*> arg Language.LSP.Protocol.Types.Common..:!? "selection"
generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestClientCapabilities.hs view
@@ -35,4 +35,4 @@   toJSON (ShowMessageRequestClientCapabilities arg0) = Aeson.object $ concat $  ["messageActionItem" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON ShowMessageRequestClientCapabilities where-  parseJSON = Aeson.withObject "ShowMessageRequestClientCapabilities" $ \arg -> ShowMessageRequestClientCapabilities <$> arg Aeson..:! "messageActionItem"+  parseJSON = Aeson.withObject "ShowMessageRequestClientCapabilities" $ \arg -> ShowMessageRequestClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "messageActionItem"
generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestParams.hs view
@@ -47,4 +47,4 @@     ,"actions" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON ShowMessageRequestParams where-  parseJSON = Aeson.withObject "ShowMessageRequestParams" $ \arg -> ShowMessageRequestParams <$> arg Aeson..: "type" <*> arg Aeson..: "message" <*> arg Aeson..:! "actions"+  parseJSON = Aeson.withObject "ShowMessageRequestParams" $ \arg -> ShowMessageRequestParams <$> arg Aeson..: "type" <*> arg Aeson..: "message" <*> arg Language.LSP.Protocol.Types.Common..:!? "actions"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelp.hs view
@@ -61,4 +61,4 @@     ,"activeParameter" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON SignatureHelp where-  parseJSON = Aeson.withObject "SignatureHelp" $ \arg -> SignatureHelp <$> arg Aeson..: "signatures" <*> arg Aeson..:! "activeSignature" <*> arg Aeson..:! "activeParameter"+  parseJSON = Aeson.withObject "SignatureHelp" $ \arg -> SignatureHelp <$> arg Aeson..: "signatures" <*> arg Language.LSP.Protocol.Types.Common..:!? "activeSignature" <*> arg Language.LSP.Protocol.Types.Common..:!? "activeParameter"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpClientCapabilities.hs view
@@ -52,4 +52,4 @@     ,"contextSupport" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON SignatureHelpClientCapabilities where-  parseJSON = Aeson.withObject "SignatureHelpClientCapabilities" $ \arg -> SignatureHelpClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "signatureInformation" <*> arg Aeson..:! "contextSupport"+  parseJSON = Aeson.withObject "SignatureHelpClientCapabilities" $ \arg -> SignatureHelpClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "signatureInformation" <*> arg Language.LSP.Protocol.Types.Common..:!? "contextSupport"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpContext.hs view
@@ -62,4 +62,4 @@     ,"activeSignatureHelp" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON SignatureHelpContext where-  parseJSON = Aeson.withObject "SignatureHelpContext" $ \arg -> SignatureHelpContext <$> arg Aeson..: "triggerKind" <*> arg Aeson..:! "triggerCharacter" <*> arg Aeson..: "isRetrigger" <*> arg Aeson..:! "activeSignatureHelp"+  parseJSON = Aeson.withObject "SignatureHelpContext" $ \arg -> SignatureHelpContext <$> arg Aeson..: "triggerKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacter" <*> arg Aeson..: "isRetrigger" <*> arg Language.LSP.Protocol.Types.Common..:!? "activeSignatureHelp"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpOptions.hs view
@@ -50,4 +50,4 @@     ,"retriggerCharacters" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON SignatureHelpOptions where-  parseJSON = Aeson.withObject "SignatureHelpOptions" $ \arg -> SignatureHelpOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "triggerCharacters" <*> arg Aeson..:! "retriggerCharacters"+  parseJSON = Aeson.withObject "SignatureHelpOptions" $ \arg -> SignatureHelpOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "retriggerCharacters"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpParams.hs view
@@ -56,4 +56,4 @@     ,"context" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON SignatureHelpParams where-  parseJSON = Aeson.withObject "SignatureHelpParams" $ \arg -> SignatureHelpParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "context"+  parseJSON = Aeson.withObject "SignatureHelpParams" $ \arg -> SignatureHelpParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "context"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpRegistrationOptions.hs view
@@ -57,4 +57,4 @@     ,"retriggerCharacters" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON SignatureHelpRegistrationOptions where-  parseJSON = Aeson.withObject "SignatureHelpRegistrationOptions" $ \arg -> SignatureHelpRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "triggerCharacters" <*> arg Aeson..:! "retriggerCharacters"+  parseJSON = Aeson.withObject "SignatureHelpRegistrationOptions" $ \arg -> SignatureHelpRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "triggerCharacters" <*> arg Language.LSP.Protocol.Types.Common..:!? "retriggerCharacters"
generated/Language/LSP/Protocol/Internal/Types/SignatureHelpTriggerKind.hs view
@@ -41,7 +41,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SignatureHelpTriggerKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SignatureHelpTriggerKind)   deriving Pretty via (ViaJSON SignatureHelpTriggerKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum SignatureHelpTriggerKind where
generated/Language/LSP/Protocol/Internal/Types/SignatureInformation.hs view
@@ -60,4 +60,4 @@     ,"activeParameter" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON SignatureInformation where-  parseJSON = Aeson.withObject "SignatureInformation" $ \arg -> SignatureInformation <$> arg Aeson..: "label" <*> arg Aeson..:! "documentation" <*> arg Aeson..:! "parameters" <*> arg Aeson..:! "activeParameter"+  parseJSON = Aeson.withObject "SignatureInformation" $ \arg -> SignatureInformation <$> arg Aeson..: "label" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentation" <*> arg Language.LSP.Protocol.Types.Common..:!? "parameters" <*> arg Language.LSP.Protocol.Types.Common..:!? "activeParameter"
generated/Language/LSP/Protocol/Internal/Types/StaticRegistrationOptions.hs view
@@ -37,4 +37,4 @@   toJSON (StaticRegistrationOptions arg0) = Aeson.object $ concat $  ["id" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON StaticRegistrationOptions where-  parseJSON = Aeson.withObject "StaticRegistrationOptions" $ \arg -> StaticRegistrationOptions <$> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "StaticRegistrationOptions" $ \arg -> StaticRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/SymbolInformation.hs view
@@ -79,4 +79,4 @@     ,["location" Aeson..= arg5]]  instance Aeson.FromJSON SymbolInformation where-  parseJSON = Aeson.withObject "SymbolInformation" $ \arg -> SymbolInformation <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "containerName" <*> arg Aeson..:! "deprecated" <*> arg Aeson..: "location"+  parseJSON = Aeson.withObject "SymbolInformation" $ \arg -> SymbolInformation <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "containerName" <*> arg Language.LSP.Protocol.Types.Common..:!? "deprecated" <*> arg Aeson..: "location"
generated/Language/LSP/Protocol/Internal/Types/SymbolKind.hs view
@@ -131,7 +131,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SymbolKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SymbolKind)   deriving Pretty via (ViaJSON SymbolKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum SymbolKind where
generated/Language/LSP/Protocol/Internal/Types/SymbolTag.hs view
@@ -33,7 +33,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SymbolTag Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum SymbolTag)   deriving Pretty via (ViaJSON SymbolTag)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum SymbolTag where
generated/Language/LSP/Protocol/Internal/Types/TextDocumentClientCapabilities.hs view
@@ -238,4 +238,4 @@     ,"diagnostic" Language.LSP.Protocol.Types.Common..=? arg29]  instance Aeson.FromJSON TextDocumentClientCapabilities where-  parseJSON = Aeson.withObject "TextDocumentClientCapabilities" $ \arg -> TextDocumentClientCapabilities <$> arg Aeson..:! "synchronization" <*> arg Aeson..:! "completion" <*> arg Aeson..:! "hover" <*> arg Aeson..:! "signatureHelp" <*> arg Aeson..:! "declaration" <*> arg Aeson..:! "definition" <*> arg Aeson..:! "typeDefinition" <*> arg Aeson..:! "implementation" <*> arg Aeson..:! "references" <*> arg Aeson..:! "documentHighlight" <*> arg Aeson..:! "documentSymbol" <*> arg Aeson..:! "codeAction" <*> arg Aeson..:! "codeLens" <*> arg Aeson..:! "documentLink" <*> arg Aeson..:! "colorProvider" <*> arg Aeson..:! "formatting" <*> arg Aeson..:! "rangeFormatting" <*> arg Aeson..:! "onTypeFormatting" <*> arg Aeson..:! "rename" <*> arg Aeson..:! "foldingRange" <*> arg Aeson..:! "selectionRange" <*> arg Aeson..:! "publishDiagnostics" <*> arg Aeson..:! "callHierarchy" <*> arg Aeson..:! "semanticTokens" <*> arg Aeson..:! "linkedEditingRange" <*> arg Aeson..:! "moniker" <*> arg Aeson..:! "typeHierarchy" <*> arg Aeson..:! "inlineValue" <*> arg Aeson..:! "inlayHint" <*> arg Aeson..:! "diagnostic"+  parseJSON = Aeson.withObject "TextDocumentClientCapabilities" $ \arg -> TextDocumentClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "synchronization" <*> arg Language.LSP.Protocol.Types.Common..:!? "completion" <*> arg Language.LSP.Protocol.Types.Common..:!? "hover" <*> arg Language.LSP.Protocol.Types.Common..:!? "signatureHelp" <*> arg Language.LSP.Protocol.Types.Common..:!? "declaration" <*> arg Language.LSP.Protocol.Types.Common..:!? "definition" <*> arg Language.LSP.Protocol.Types.Common..:!? "typeDefinition" <*> arg Language.LSP.Protocol.Types.Common..:!? "implementation" <*> arg Language.LSP.Protocol.Types.Common..:!? "references" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentHighlight" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentSymbol" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeAction" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeLens" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentLink" <*> arg Language.LSP.Protocol.Types.Common..:!? "colorProvider" <*> arg Language.LSP.Protocol.Types.Common..:!? "formatting" <*> arg Language.LSP.Protocol.Types.Common..:!? "rangeFormatting" <*> arg Language.LSP.Protocol.Types.Common..:!? "onTypeFormatting" <*> arg Language.LSP.Protocol.Types.Common..:!? "rename" <*> arg Language.LSP.Protocol.Types.Common..:!? "foldingRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "selectionRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "publishDiagnostics" <*> arg Language.LSP.Protocol.Types.Common..:!? "callHierarchy" <*> arg Language.LSP.Protocol.Types.Common..:!? "semanticTokens" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkedEditingRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "moniker" <*> arg Language.LSP.Protocol.Types.Common..:!? "typeHierarchy" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlineValue" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlayHint" <*> arg Language.LSP.Protocol.Types.Common..:!? "diagnostic"
generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveReason.hs view
@@ -40,7 +40,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TextDocumentSaveReason Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TextDocumentSaveReason)   deriving Pretty via (ViaJSON TextDocumentSaveReason)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum TextDocumentSaveReason where
generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveRegistrationOptions.hs view
@@ -41,4 +41,4 @@     ,"includeText" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON TextDocumentSaveRegistrationOptions where-  parseJSON = Aeson.withObject "TextDocumentSaveRegistrationOptions" $ \arg -> TextDocumentSaveRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "includeText"+  parseJSON = Aeson.withObject "TextDocumentSaveRegistrationOptions" $ \arg -> TextDocumentSaveRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "includeText"
generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncClientCapabilities.hs view
@@ -51,4 +51,4 @@     ,"didSave" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON TextDocumentSyncClientCapabilities where-  parseJSON = Aeson.withObject "TextDocumentSyncClientCapabilities" $ \arg -> TextDocumentSyncClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "willSave" <*> arg Aeson..:! "willSaveWaitUntil" <*> arg Aeson..:! "didSave"+  parseJSON = Aeson.withObject "TextDocumentSyncClientCapabilities" $ \arg -> TextDocumentSyncClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "willSave" <*> arg Language.LSP.Protocol.Types.Common..:!? "willSaveWaitUntil" <*> arg Language.LSP.Protocol.Types.Common..:!? "didSave"
generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncKind.hs view
@@ -43,7 +43,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TextDocumentSyncKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TextDocumentSyncKind)   deriving Pretty via (ViaJSON TextDocumentSyncKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum TextDocumentSyncKind where
generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncOptions.hs view
@@ -61,4 +61,4 @@     ,"save" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON TextDocumentSyncOptions where-  parseJSON = Aeson.withObject "TextDocumentSyncOptions" $ \arg -> TextDocumentSyncOptions <$> arg Aeson..:! "openClose" <*> arg Aeson..:! "change" <*> arg Aeson..:! "willSave" <*> arg Aeson..:! "willSaveWaitUntil" <*> arg Aeson..:! "save"+  parseJSON = Aeson.withObject "TextDocumentSyncOptions" $ \arg -> TextDocumentSyncOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "openClose" <*> arg Language.LSP.Protocol.Types.Common..:!? "change" <*> arg Language.LSP.Protocol.Types.Common..:!? "willSave" <*> arg Language.LSP.Protocol.Types.Common..:!? "willSaveWaitUntil" <*> arg Language.LSP.Protocol.Types.Common..:!? "save"
generated/Language/LSP/Protocol/Internal/Types/TokenFormat.hs view
@@ -31,7 +31,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TokenFormat Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TokenFormat)   deriving Pretty via (ViaJSON TokenFormat)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum TokenFormat where
generated/Language/LSP/Protocol/Internal/Types/TraceValues.hs view
@@ -39,7 +39,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TraceValues Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum TraceValues)   deriving Pretty via (ViaJSON TraceValues)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum TraceValues where
generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionClientCapabilities.hs view
@@ -43,4 +43,4 @@     ,"linkSupport" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON TypeDefinitionClientCapabilities where-  parseJSON = Aeson.withObject "TypeDefinitionClientCapabilities" $ \arg -> TypeDefinitionClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "linkSupport"+  parseJSON = Aeson.withObject "TypeDefinitionClientCapabilities" $ \arg -> TypeDefinitionClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "linkSupport"
generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionOptions.hs view
@@ -34,4 +34,4 @@   toJSON (TypeDefinitionOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON TypeDefinitionOptions where-  parseJSON = Aeson.withObject "TypeDefinitionOptions" $ \arg -> TypeDefinitionOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "TypeDefinitionOptions" $ \arg -> TypeDefinitionOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionParams.hs view
@@ -53,4 +53,4 @@     ,"partialResultToken" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON TypeDefinitionParams where-  parseJSON = Aeson.withObject "TypeDefinitionParams" $ \arg -> TypeDefinitionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken"+  parseJSON = Aeson.withObject "TypeDefinitionParams" $ \arg -> TypeDefinitionParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken"
generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionRegistrationOptions.hs view
@@ -48,4 +48,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON TypeDefinitionRegistrationOptions where-  parseJSON = Aeson.withObject "TypeDefinitionRegistrationOptions" $ \arg -> TypeDefinitionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "TypeDefinitionRegistrationOptions" $ \arg -> TypeDefinitionRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyClientCapabilities.hs view
@@ -36,4 +36,4 @@   toJSON (TypeHierarchyClientCapabilities arg0) = Aeson.object $ concat $  ["dynamicRegistration" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON TypeHierarchyClientCapabilities where-  parseJSON = Aeson.withObject "TypeHierarchyClientCapabilities" $ \arg -> TypeHierarchyClientCapabilities <$> arg Aeson..:! "dynamicRegistration"+  parseJSON = Aeson.withObject "TypeHierarchyClientCapabilities" $ \arg -> TypeHierarchyClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyItem.hs view
@@ -81,4 +81,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg7]  instance Aeson.FromJSON TypeHierarchyItem where-  parseJSON = Aeson.withObject "TypeHierarchyItem" $ \arg -> TypeHierarchyItem <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "detail" <*> arg Aeson..: "uri" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "TypeHierarchyItem" $ \arg -> TypeHierarchyItem <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "detail" <*> arg Aeson..: "uri" <*> arg Aeson..: "range" <*> arg Aeson..: "selectionRange" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyOptions.hs view
@@ -36,4 +36,4 @@   toJSON (TypeHierarchyOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON TypeHierarchyOptions where-  parseJSON = Aeson.withObject "TypeHierarchyOptions" $ \arg -> TypeHierarchyOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "TypeHierarchyOptions" $ \arg -> TypeHierarchyOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyPrepareParams.hs view
@@ -49,4 +49,4 @@     ,"workDoneToken" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON TypeHierarchyPrepareParams where-  parseJSON = Aeson.withObject "TypeHierarchyPrepareParams" $ \arg -> TypeHierarchyPrepareParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "TypeHierarchyPrepareParams" $ \arg -> TypeHierarchyPrepareParams <$> arg Aeson..: "textDocument" <*> arg Aeson..: "position" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyRegistrationOptions.hs view
@@ -50,4 +50,4 @@     ,"id" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON TypeHierarchyRegistrationOptions where-  parseJSON = Aeson.withObject "TypeHierarchyRegistrationOptions" $ \arg -> TypeHierarchyRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "id"+  parseJSON = Aeson.withObject "TypeHierarchyRegistrationOptions" $ \arg -> TypeHierarchyRegistrationOptions <$> arg Aeson..: "documentSelector" <*> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "id"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySubtypesParams.hs view
@@ -49,4 +49,4 @@     ,["item" Aeson..= arg2]]  instance Aeson.FromJSON TypeHierarchySubtypesParams where-  parseJSON = Aeson.withObject "TypeHierarchySubtypesParams" $ \arg -> TypeHierarchySubtypesParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "item"+  parseJSON = Aeson.withObject "TypeHierarchySubtypesParams" $ \arg -> TypeHierarchySubtypesParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "item"
generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySupertypesParams.hs view
@@ -49,4 +49,4 @@     ,["item" Aeson..= arg2]]  instance Aeson.FromJSON TypeHierarchySupertypesParams where-  parseJSON = Aeson.withObject "TypeHierarchySupertypesParams" $ \arg -> TypeHierarchySupertypesParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "item"+  parseJSON = Aeson.withObject "TypeHierarchySupertypesParams" $ \arg -> TypeHierarchySupertypesParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "item"
generated/Language/LSP/Protocol/Internal/Types/UInitializeParams.hs view
@@ -101,4 +101,4 @@     ,"trace" Language.LSP.Protocol.Types.Common..=? arg8]  instance Aeson.FromJSON UInitializeParams where-  parseJSON = Aeson.withObject "_InitializeParams" $ \arg -> UInitializeParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..: "processId" <*> arg Aeson..:! "clientInfo" <*> arg Aeson..:! "locale" <*> arg Aeson..:! "rootPath" <*> arg Aeson..: "rootUri" <*> arg Aeson..: "capabilities" <*> arg Aeson..:! "initializationOptions" <*> arg Aeson..:! "trace"+  parseJSON = Aeson.withObject "_InitializeParams" $ \arg -> UInitializeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Aeson..: "processId" <*> arg Language.LSP.Protocol.Types.Common..:!? "clientInfo" <*> arg Language.LSP.Protocol.Types.Common..:!? "locale" <*> arg Language.LSP.Protocol.Types.Common..:!? "rootPath" <*> arg Aeson..: "rootUri" <*> arg Aeson..: "capabilities" <*> arg Language.LSP.Protocol.Types.Common..:!? "initializationOptions" <*> arg Language.LSP.Protocol.Types.Common..:!? "trace"
generated/Language/LSP/Protocol/Internal/Types/UniquenessLevel.hs view
@@ -49,7 +49,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum UniquenessLevel Data.Text.Text)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum UniquenessLevel)   deriving Pretty via (ViaJSON UniquenessLevel)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum UniquenessLevel where
generated/Language/LSP/Protocol/Internal/Types/WatchKind.hs view
@@ -40,7 +40,7 @@   deriving stock (Show, Eq, Ord, Generic)   deriving anyclass (NFData, Hashable)   deriving ( Aeson.ToJSON-  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum WatchKind Language.LSP.Protocol.Types.Common.UInt)+  , Aeson.FromJSON ) via (Language.LSP.Protocol.Types.LspEnum.AsLspEnum WatchKind)   deriving Pretty via (ViaJSON WatchKind)  instance Language.LSP.Protocol.Types.LspEnum.LspEnum WatchKind where
generated/Language/LSP/Protocol/Internal/Types/WindowClientCapabilities.hs view
@@ -58,4 +58,4 @@     ,"showDocument" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON WindowClientCapabilities where-  parseJSON = Aeson.withObject "WindowClientCapabilities" $ \arg -> WindowClientCapabilities <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "showMessage" <*> arg Aeson..:! "showDocument"+  parseJSON = Aeson.withObject "WindowClientCapabilities" $ \arg -> WindowClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "showMessage" <*> arg Language.LSP.Protocol.Types.Common..:!? "showDocument"
generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressBegin.hs view
@@ -70,4 +70,4 @@     ,"percentage" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON WorkDoneProgressBegin where-  parseJSON = Aeson.withObject "WorkDoneProgressBegin" $ \arg -> WorkDoneProgressBegin <$> arg Aeson..: "kind" <*> arg Aeson..: "title" <*> arg Aeson..:! "cancellable" <*> arg Aeson..:! "message" <*> arg Aeson..:! "percentage"+  parseJSON = Aeson.withObject "WorkDoneProgressBegin" $ \arg -> WorkDoneProgressBegin <$> arg Aeson..: "kind" <*> arg Aeson..: "title" <*> arg Language.LSP.Protocol.Types.Common..:!? "cancellable" <*> arg Language.LSP.Protocol.Types.Common..:!? "message" <*> arg Language.LSP.Protocol.Types.Common..:!? "percentage"
generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressEnd.hs view
@@ -42,4 +42,4 @@     ,"message" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON WorkDoneProgressEnd where-  parseJSON = Aeson.withObject "WorkDoneProgressEnd" $ \arg -> WorkDoneProgressEnd <$> arg Aeson..: "kind" <*> arg Aeson..:! "message"+  parseJSON = Aeson.withObject "WorkDoneProgressEnd" $ \arg -> WorkDoneProgressEnd <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "message"
generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressOptions.hs view
@@ -34,4 +34,4 @@   toJSON (WorkDoneProgressOptions arg0) = Aeson.object $ concat $  ["workDoneProgress" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON WorkDoneProgressOptions where-  parseJSON = Aeson.withObject "WorkDoneProgressOptions" $ \arg -> WorkDoneProgressOptions <$> arg Aeson..:! "workDoneProgress"+  parseJSON = Aeson.withObject "WorkDoneProgressOptions" $ \arg -> WorkDoneProgressOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress"
generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressParams.hs view
@@ -35,4 +35,4 @@   toJSON (WorkDoneProgressParams arg0) = Aeson.object $ concat $  ["workDoneToken" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON WorkDoneProgressParams where-  parseJSON = Aeson.withObject "WorkDoneProgressParams" $ \arg -> WorkDoneProgressParams <$> arg Aeson..:! "workDoneToken"+  parseJSON = Aeson.withObject "WorkDoneProgressParams" $ \arg -> WorkDoneProgressParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken"
generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressReport.hs view
@@ -63,4 +63,4 @@     ,"percentage" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON WorkDoneProgressReport where-  parseJSON = Aeson.withObject "WorkDoneProgressReport" $ \arg -> WorkDoneProgressReport <$> arg Aeson..: "kind" <*> arg Aeson..:! "cancellable" <*> arg Aeson..:! "message" <*> arg Aeson..:! "percentage"+  parseJSON = Aeson.withObject "WorkDoneProgressReport" $ \arg -> WorkDoneProgressReport <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "cancellable" <*> arg Language.LSP.Protocol.Types.Common..:!? "message" <*> arg Language.LSP.Protocol.Types.Common..:!? "percentage"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceClientCapabilities.hs view
@@ -133,4 +133,4 @@     ,"diagnostics" Language.LSP.Protocol.Types.Common..=? arg13]  instance Aeson.FromJSON WorkspaceClientCapabilities where-  parseJSON = Aeson.withObject "WorkspaceClientCapabilities" $ \arg -> WorkspaceClientCapabilities <$> arg Aeson..:! "applyEdit" <*> arg Aeson..:! "workspaceEdit" <*> arg Aeson..:! "didChangeConfiguration" <*> arg Aeson..:! "didChangeWatchedFiles" <*> arg Aeson..:! "symbol" <*> arg Aeson..:! "executeCommand" <*> arg Aeson..:! "workspaceFolders" <*> arg Aeson..:! "configuration" <*> arg Aeson..:! "semanticTokens" <*> arg Aeson..:! "codeLens" <*> arg Aeson..:! "fileOperations" <*> arg Aeson..:! "inlineValue" <*> arg Aeson..:! "inlayHint" <*> arg Aeson..:! "diagnostics"+  parseJSON = Aeson.withObject "WorkspaceClientCapabilities" $ \arg -> WorkspaceClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "applyEdit" <*> arg Language.LSP.Protocol.Types.Common..:!? "workspaceEdit" <*> arg Language.LSP.Protocol.Types.Common..:!? "didChangeConfiguration" <*> arg Language.LSP.Protocol.Types.Common..:!? "didChangeWatchedFiles" <*> arg Language.LSP.Protocol.Types.Common..:!? "symbol" <*> arg Language.LSP.Protocol.Types.Common..:!? "executeCommand" <*> arg Language.LSP.Protocol.Types.Common..:!? "workspaceFolders" <*> arg Language.LSP.Protocol.Types.Common..:!? "configuration" <*> arg Language.LSP.Protocol.Types.Common..:!? "semanticTokens" <*> arg Language.LSP.Protocol.Types.Common..:!? "codeLens" <*> arg Language.LSP.Protocol.Types.Common..:!? "fileOperations" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlineValue" <*> arg Language.LSP.Protocol.Types.Common..:!? "inlayHint" <*> arg Language.LSP.Protocol.Types.Common..:!? "diagnostics"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceDiagnosticParams.hs view
@@ -56,4 +56,4 @@     ,["previousResultIds" Aeson..= arg3]]  instance Aeson.FromJSON WorkspaceDiagnosticParams where-  parseJSON = Aeson.withObject "WorkspaceDiagnosticParams" $ \arg -> WorkspaceDiagnosticParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..:! "identifier" <*> arg Aeson..: "previousResultIds"+  parseJSON = Aeson.withObject "WorkspaceDiagnosticParams" $ \arg -> WorkspaceDiagnosticParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "identifier" <*> arg Aeson..: "previousResultIds"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceEdit.hs view
@@ -78,4 +78,4 @@     ,"changeAnnotations" Language.LSP.Protocol.Types.Common..=? arg2]  instance Aeson.FromJSON WorkspaceEdit where-  parseJSON = Aeson.withObject "WorkspaceEdit" $ \arg -> WorkspaceEdit <$> arg Aeson..:! "changes" <*> arg Aeson..:! "documentChanges" <*> arg Aeson..:! "changeAnnotations"+  parseJSON = Aeson.withObject "WorkspaceEdit" $ \arg -> WorkspaceEdit <$> arg Language.LSP.Protocol.Types.Common..:!? "changes" <*> arg Language.LSP.Protocol.Types.Common..:!? "documentChanges" <*> arg Language.LSP.Protocol.Types.Common..:!? "changeAnnotations"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceEditClientCapabilities.hs view
@@ -72,4 +72,4 @@     ,"changeAnnotationSupport" Language.LSP.Protocol.Types.Common..=? arg4]  instance Aeson.FromJSON WorkspaceEditClientCapabilities where-  parseJSON = Aeson.withObject "WorkspaceEditClientCapabilities" $ \arg -> WorkspaceEditClientCapabilities <$> arg Aeson..:! "documentChanges" <*> arg Aeson..:! "resourceOperations" <*> arg Aeson..:! "failureHandling" <*> arg Aeson..:! "normalizesLineEndings" <*> arg Aeson..:! "changeAnnotationSupport"+  parseJSON = Aeson.withObject "WorkspaceEditClientCapabilities" $ \arg -> WorkspaceEditClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "documentChanges" <*> arg Language.LSP.Protocol.Types.Common..:!? "resourceOperations" <*> arg Language.LSP.Protocol.Types.Common..:!? "failureHandling" <*> arg Language.LSP.Protocol.Types.Common..:!? "normalizesLineEndings" <*> arg Language.LSP.Protocol.Types.Common..:!? "changeAnnotationSupport"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersInitializeParams.hs view
@@ -41,4 +41,4 @@   toJSON (WorkspaceFoldersInitializeParams arg0) = Aeson.object $ concat $  ["workspaceFolders" Language.LSP.Protocol.Types.Common..=? arg0]  instance Aeson.FromJSON WorkspaceFoldersInitializeParams where-  parseJSON = Aeson.withObject "WorkspaceFoldersInitializeParams" $ \arg -> WorkspaceFoldersInitializeParams <$> arg Aeson..:! "workspaceFolders"+  parseJSON = Aeson.withObject "WorkspaceFoldersInitializeParams" $ \arg -> WorkspaceFoldersInitializeParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workspaceFolders"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersServerCapabilities.hs view
@@ -46,4 +46,4 @@     ,"changeNotifications" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON WorkspaceFoldersServerCapabilities where-  parseJSON = Aeson.withObject "WorkspaceFoldersServerCapabilities" $ \arg -> WorkspaceFoldersServerCapabilities <$> arg Aeson..:! "supported" <*> arg Aeson..:! "changeNotifications"+  parseJSON = Aeson.withObject "WorkspaceFoldersServerCapabilities" $ \arg -> WorkspaceFoldersServerCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "supported" <*> arg Language.LSP.Protocol.Types.Common..:!? "changeNotifications"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceFullDocumentDiagnosticReport.hs view
@@ -63,4 +63,4 @@     ,["version" Aeson..= arg4]]  instance Aeson.FromJSON WorkspaceFullDocumentDiagnosticReport where-  parseJSON = Aeson.withObject "WorkspaceFullDocumentDiagnosticReport" $ \arg -> WorkspaceFullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Aeson..:! "resultId" <*> arg Aeson..: "items" <*> arg Aeson..: "uri" <*> arg Aeson..: "version"+  parseJSON = Aeson.withObject "WorkspaceFullDocumentDiagnosticReport" $ \arg -> WorkspaceFullDocumentDiagnosticReport <$> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "resultId" <*> arg Aeson..: "items" <*> arg Aeson..: "uri" <*> arg Aeson..: "version"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbol.hs view
@@ -80,4 +80,4 @@     ,"data" Language.LSP.Protocol.Types.Common..=? arg5]  instance Aeson.FromJSON WorkspaceSymbol where-  parseJSON = Aeson.withObject "WorkspaceSymbol" $ \arg -> WorkspaceSymbol <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Aeson..:! "tags" <*> arg Aeson..:! "containerName" <*> arg Aeson..: "location" <*> arg Aeson..:! "data"+  parseJSON = Aeson.withObject "WorkspaceSymbol" $ \arg -> WorkspaceSymbol <$> arg Aeson..: "name" <*> arg Aeson..: "kind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tags" <*> arg Language.LSP.Protocol.Types.Common..:!? "containerName" <*> arg Aeson..: "location" <*> arg Language.LSP.Protocol.Types.Common..:!? "data"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolClientCapabilities.hs view
@@ -60,4 +60,4 @@     ,"resolveSupport" Language.LSP.Protocol.Types.Common..=? arg3]  instance Aeson.FromJSON WorkspaceSymbolClientCapabilities where-  parseJSON = Aeson.withObject "WorkspaceSymbolClientCapabilities" $ \arg -> WorkspaceSymbolClientCapabilities <$> arg Aeson..:! "dynamicRegistration" <*> arg Aeson..:! "symbolKind" <*> arg Aeson..:! "tagSupport" <*> arg Aeson..:! "resolveSupport"+  parseJSON = Aeson.withObject "WorkspaceSymbolClientCapabilities" $ \arg -> WorkspaceSymbolClientCapabilities <$> arg Language.LSP.Protocol.Types.Common..:!? "dynamicRegistration" <*> arg Language.LSP.Protocol.Types.Common..:!? "symbolKind" <*> arg Language.LSP.Protocol.Types.Common..:!? "tagSupport" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveSupport"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolOptions.hs view
@@ -42,4 +42,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON WorkspaceSymbolOptions where-  parseJSON = Aeson.withObject "WorkspaceSymbolOptions" $ \arg -> WorkspaceSymbolOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "WorkspaceSymbolOptions" $ \arg -> WorkspaceSymbolOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolParams.hs view
@@ -48,4 +48,4 @@     ,["query" Aeson..= arg2]]  instance Aeson.FromJSON WorkspaceSymbolParams where-  parseJSON = Aeson.withObject "WorkspaceSymbolParams" $ \arg -> WorkspaceSymbolParams <$> arg Aeson..:! "workDoneToken" <*> arg Aeson..:! "partialResultToken" <*> arg Aeson..: "query"+  parseJSON = Aeson.withObject "WorkspaceSymbolParams" $ \arg -> WorkspaceSymbolParams <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneToken" <*> arg Language.LSP.Protocol.Types.Common..:!? "partialResultToken" <*> arg Aeson..: "query"
generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolRegistrationOptions.hs view
@@ -42,4 +42,4 @@     ,"resolveProvider" Language.LSP.Protocol.Types.Common..=? arg1]  instance Aeson.FromJSON WorkspaceSymbolRegistrationOptions where-  parseJSON = Aeson.withObject "WorkspaceSymbolRegistrationOptions" $ \arg -> WorkspaceSymbolRegistrationOptions <$> arg Aeson..:! "workDoneProgress" <*> arg Aeson..:! "resolveProvider"+  parseJSON = Aeson.withObject "WorkspaceSymbolRegistrationOptions" $ \arg -> WorkspaceSymbolRegistrationOptions <$> arg Language.LSP.Protocol.Types.Common..:!? "workDoneProgress" <*> arg Language.LSP.Protocol.Types.Common..:!? "resolveProvider"
generator/CodeGen.hs view
@@ -1,10 +1,8 @@ {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE ViewPatterns #-}  {- | The main module for generating code from the metamodel@@ -163,9 +161,10 @@ genFromMetaModel prefix dir mm = do   let (symbolTable, structTable) = buildTables mm   flip runReaderT (CodeGenEnv symbolTable structTable prefix dir) $ do-    structModuleNames <- traverse genStruct (structures mm)     -- Don't even generate LSPAny, LSPObject, or LSPArry-    aliasModuleNames <- traverse genAlias (filter (\TypeAlias{name} -> name `notElem` ["LSPAny", "LSPObject", "LSPArray"]) (typeAliases mm))+    let filteredAliases = filter (\TypeAlias{name} -> name `notElem` ["LSPAny", "LSPObject", "LSPArray"]) (typeAliases mm)+    structModuleNames <- traverse genStruct (structures mm)+    aliasModuleNames <- traverse genAlias filteredAliases     enumModuleNames <- traverse genEnum (enumerations mm)     methodModuleName <- genMethods (requests mm) (notifications mm)     -- not the methods, we export them separately!@@ -173,7 +172,9 @@     -- Have to use the string form of the generated Name     -- since we might have mangled the original name     let structNames = mapMaybe (\Structure{name} -> Map.lookup name symbolTable) (structures mm)-    genLensModule structNames+        aliasNames = mapMaybe (\TypeAlias{name} -> Map.lookup name symbolTable) filteredAliases+        enumNames = mapMaybe (\Enumeration{name} -> Map.lookup name symbolTable) (enumerations mm)+    genMetaModule structNames aliasNames enumNames     pure ()   pure () @@ -334,12 +335,13 @@   ensureImport "Data.Aeson" (QualAs "Aeson")   ensureImport "Data.Row.Aeson" (QualAs "Aeson")   ensureImport "Data.Row.Hashable" (QualAs "Hashable")-  matcherName <- entityName "Language.LSP.Protocol.Types.Common" ".=?"+  optionalPairerName <- entityName "Language.LSP.Protocol.Types.Common" ".=?"+  optionalMatcherName <- entityName "Language.LSP.Protocol.Types.Common" ".:!?"   let toJsonD =         let (unzip -> (args, pairEs)) = flip fmap (zip props [0 ..]) $ \(Property{name, optional}, i) ->               let n :: T.Text = "arg" <> (T.pack $ show i)                   pairE = case optional of-                    Just True -> dquotes (pretty name) <+> pretty matcherName <+> pretty n+                    Just True -> dquotes (pretty name) <+> pretty optionalPairerName <+> pretty n                     _ -> brackets (dquotes (pretty name) <+> "Aeson..=" <+> pretty n)                in (pretty n, pairE)             body = "Aeson.object $ concat $ " <+> encloseSep "[" "]" "," pairEs@@ -351,7 +353,9 @@     let vn :: T.Text = "arg"     let exprs = flip fmap props $ \Property{name, optional} ->           case optional of-            Just True -> pretty vn <+> "Aeson..:!" <+> dquotes (pretty name)+            -- Accept null in place of Nothing+            -- Note [Principle of robustness for parsing LSP types]+            Just True -> pretty vn <+> pretty optionalMatcherName <+> dquotes (pretty name)             _ -> pretty vn <+> "Aeson..:" <+> dquotes (pretty name)     let lamBody = mkIterApplicativeApp (pretty tn) exprs     let body = "Aeson.withObject" <+> dquotes (pretty structName) <+> "$" <+> "\\" <> pretty vn <+> "->" <+> nest indentSize lamBody@@ -474,7 +478,7 @@           toDeriveViaLspEnum = ["Aeson.ToJSON", "Aeson.FromJSON"] ++ if custom && isString then [isStringN] else []           stockDeriv = "deriving stock" <+> tupled (fmap pretty toStockDerive)           anyclassDeriv = "deriving anyclass" <+> tupled (fmap pretty toAnyclassDerive)-          viaDeriv1 = "deriving" <+> tupled toDeriveViaLspEnum <+> "via" <+> parens (asLspEnumN <+> pretty tn <+> ty)+          viaDeriv1 = "deriving" <+> tupled toDeriveViaLspEnum <+> "via" <+> parens (asLspEnumN <+> pretty tn)           viaDeriv2 = "deriving" <+> "Pretty" <+> "via" <+> parens ("ViaJSON" <+> pretty tn)          in           indent indentSize $ hardvcat [stockDeriv, anyclassDeriv, viaDeriv1, viaDeriv2]@@ -844,17 +848,32 @@ genMethods reqs nots = do   genModule "Method" [] Nothing (printMethods reqs nots) ---------------+--------------- -genLensModule :: [T.Text] -> CodeGenM T.Text-genLensModule names = do-  genModule "Lens" ["TemplateHaskell"] Nothing $ do-    mkLensesN <- pretty <$> entityName "Control.Lens.TH" "makeFieldsNoPrefix"-    decls <- for names $ \thn -> do-      nm <- pretty <$> lspEntityName (typesModSegment <> "." <> thn) thn-      let lensesD = mkLensesN <+> "''" <> nm-      pure lensesD-    pure $ hardvcat decls+genMetaModule :: [T.Text] -> [T.Text] -> [T.Text] -> CodeGenM T.Text+genMetaModule structNames aliasNames enumNames = do+  genModule "Meta" ["TemplateHaskell"] Nothing $ do+    ensureImport "Language.Haskell.TH" (QualAs "TH")+    let tyn thn = pretty <$> entityName "Language.LSP.Protocol.Internal.Types" thn+    sns <- traverse tyn structNames+    ans <- traverse tyn aliasNames+    ens <- traverse tyn enumNames+    let+      sig1 = "structNames" <+> "::" <+> brackets "TH.Name"+      decl1 = "structNames =" <+> nest indentSize (encloseSep "[" "]" "," $ fmap (\n -> "''" <> n) sns)+      sig2 = "aliasNames" <+> "::" <+> brackets "TH.Name"+      decl2 = "aliasNames =" <+> nest indentSize (encloseSep "[" "]" "," $ fmap (\n -> "''" <> n) ans)+      sig3 = "enumNames" <+> "::" <+> brackets "TH.Name"+      decl3 = "enumNames =" <+> nest indentSize (encloseSep "[" "]" "," $ fmap (\n -> "''" <> n) ens)+    pure $+      hardvcat+        [ sig1+        , decl1+        , sig2+        , decl2+        , sig3+        , decl3+        ]  --------------- @@ -1021,4 +1040,25 @@  We don't do this for fields, instead we rely on `DuplicateRecordFields` and use classy lenses.+-}++{- Note [Principle of robustness for parsing LSP types]+The principle of robustness states:++> Be conservative in what you do, liberal in what you accept from others++We try to follow this when parsing LSP types, and where possible accept+"slightly wrong" input. This is important because the LSP spec is very+fiddly to implement correctly, and there are many clients we interact with,+some of whom will therefore get it wrong. It's best if we can accept this+(although in an ideal world we would also emit a warning, but it's not super+easy to do that, so we just don't).++Specific ways in which we try to be robust:+- Accept 'null' to mean "missing". The LSP spec *sometimes* allows a value+  to be 'null', but often it says a value can be missing but is not nullable.+  A common mistake for clients is to still send 'null' to mean "missing"+  (see e.g. https://github.com/haskell/haskell-language-server/issues/3842#issuecomment-1798217080).+  This is complicated because if 'null' is an allowed value then we want to parse+  it as a present 'null', not missing. -}
lsp-types.cabal view
@@ -1,6 +1,6 @@ cabal-version:      3.0 name:               lsp-types-version:            2.1.0.0+version:            2.1.1.0 synopsis:   Haskell library for the Microsoft Language Server Protocol, data types @@ -18,8 +18,8 @@ build-type:         Simple extra-source-files:   ChangeLog.md-  README.md   metaModel.json+  README.md  source-repository head   type:     git@@ -33,7 +33,8 @@  library   hs-source-dirs:     src generated-  default-language:   Haskell2010+  default-language:   GHC2021+   -- Various things we want on by default   -- * syntactic niceties, QOL   -- * we always want more deriving options@@ -45,60 +46,51 @@   default-extensions:     DataKinds     DeriveAnyClass-    DeriveGeneric     DerivingStrategies     DerivingVia     DuplicateRecordFields-    FlexibleInstances     FunctionalDependencies     GADTs-    GeneralizedNewtypeDeriving-    ImportQualifiedPost-    KindSignatures-    MultiParamTypeClasses     NegativeLiterals     OverloadedStrings-    PolyKinds-    ScopedTypeVariables-    StandaloneDeriving     StandaloneKindSignatures     StrictData-    TypeApplications     TypeFamilies-    TypeOperators     UndecidableInstances    build-depends:-    , aeson             >=1.2.2.0 && <2.3-    , base              >=4.11    && <5-    , binary-    , containers-    , data-default-    , deepseq-    , Diff              >=0.2-    , dlist-    , exceptions-    , hashable          >=1.3.4.0-    , indexed-traversable-    , indexed-traversable-instances-    , lens              >=4.15.2-    , lens-aeson-    , mod-    , mtl               <2.4-    , prettyprinter     -    , network-uri       >=2.6-    , row-types         >=1.0-    , safe-    , some-    , template-haskell-    , text-    -- needed for aeson < 1-    , unordered-containers+    , aeson                          >=2     && <2.3+    , base                           >=4.11  && <5+    , binary                         ^>=0.8+    , containers                     ^>=0.6+    , data-default                   ^>=0.7+    , deepseq                        >=1.4   && <1.6+    , Diff                           >=0.4   && <0.6+    , dlist                          ^>=1.0+    , exceptions                     ^>=0.10+    , hashable                       ^>=1.4+    , indexed-traversable            ^>=0.1+    , indexed-traversable-instances  ^>=0.1+    , lens                           >=5.1   && <5.3+    , lens-aeson                     ^>=1.2+    , mod                            ^>=0.2+    , mtl                            >=2.2   && <2.4+    , network-uri                    ^>=2.6+    , prettyprinter                  ^>=1.7+    , row-types                      ^>=1.0+    , safe                           ^>=0.3+    , some                           ^>=1.0+    , template-haskell               >=2.7   && <2.22+    , text                           >=1     && <2.2 +  -- This version of filepath comes with GHC 9.6, so+  -- we should be able to drop this flag once we only+  -- support 9.6 or higher   if flag(force-ospath)-    build-depends: filepath ^>=1.4.100.0+    build-depends: filepath >=1.4.100.0 && < 1.6+   else-    build-depends: filepath+    build-depends: filepath >=1.4 && < 1.6    ghc-options:     -Wall -Wmissing-deriving-strategies@@ -109,9 +101,10 @@     Data.Row.Aeson     Data.Row.Hashable     Language.LSP.Protocol.Capabilities+    Language.LSP.Protocol.Lens     Language.LSP.Protocol.Message     Language.LSP.Protocol.Types-    Language.LSP.Protocol.Lens+    Language.LSP.Protocol.Meta     Language.LSP.Protocol.Utils.Misc     Language.LSP.Protocol.Utils.SMethodMap @@ -138,6 +131,7 @@     Language.LSP.Protocol.Types.Uri.OsPath     Language.LSP.Protocol.Types.WatchKinds +   -- The generated modules   -- In principle these could be in a separate component,   -- but a) the generated modules depend on some of the common code@@ -145,7 +139,7 @@   -- It's simpler to just have everything in together, otherwise we'd   -- actually need three layers!   other-modules:-    Language.LSP.Protocol.Internal.Lens+    Language.LSP.Protocol.Internal.Meta     Language.LSP.Protocol.Internal.Method     Language.LSP.Protocol.Internal.Types     Language.LSP.Protocol.Internal.Types.AnnotatedTextEdit@@ -519,30 +513,62 @@ library metamodel   -- We don't currently re-export this from the main   -- library, but it's here if people want it-  visibility: public+  visibility:         public   hs-source-dirs:     metamodel-  default-language:   Haskell2010-  default-extensions: StrictData ImportQualifiedPost+  default-language:   GHC2021+  default-extensions:+    StrictData+   exposed-modules:     Language.LSP.MetaModel     Language.LSP.MetaModel.Types    build-depends:-    , aeson             >=1.2.2.0+    , aeson             >=2     , base              >=4.11    && <5-    , file-embed-    , lens              >=4.15.2+    , file-embed        ^>=0.0.15+    , lens              >=5.1     && <5.3+    , template-haskell  >=2.7     && <2.22+    , text              >=1       && <2.2++library lsp-types-quickcheck+  visibility:         public+  hs-source-dirs:     quickcheck generated+  default-language:   GHC2021+  default-extensions:+    StrictData+    DerivingVia+    DerivingStrategies++  exposed-modules:+    Language.LSP.Protocol.QuickCheck++  other-modules:+    Language.LSP.Protocol.QuickCheck.Common+    Language.LSP.Protocol.QuickCheck.Message+    Language.LSP.Protocol.QuickCheck.Types++  build-depends:+    , aeson             >=2+    , base              >=4.11    && <5+    , lsp-types+    , row-types+    , QuickCheck+    , quickcheck-instances+    , generic-arbitrary     , template-haskell-    , text+    , text              >=1       && <2.2  executable generator   hs-source-dirs:     generator-  default-language:   Haskell2010-  default-extensions: StrictData ImportQualifiedPost+  default-language:   GHC2021+  default-extensions:+    StrictData+   main-is:            Main.hs   other-modules:      CodeGen   build-depends:-    , base                 >=4.11 && <5+    , base     , containers     , directory     , filepath@@ -555,8 +581,7 @@ test-suite lsp-types-test   type:               exitcode-stdio-1.0   hs-source-dirs:     test-  default-language:   Haskell2010-  default-extensions: ImportQualifiedPost+  default-language:   GHC2021   main-is:            Main.hs   other-modules:     CapabilitiesSpec@@ -571,14 +596,14 @@     WorkspaceEditSpec    ghc-options:        -threaded -rtsopts -with-rtsopts=-N -Wall-   build-depends:-    , aeson                 >=2.0.3.0+    , aeson     , base     , filepath     , hspec-    , lens                  >=4.15.2+    , lens     , lsp-types+    , lsp-types-quickcheck     , network-uri     , QuickCheck     , quickcheck-instances
metamodel/Language/LSP/MetaModel/Types.hs view
@@ -1,14 +1,10 @@ {-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveLift #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE GADTs #-}-{-# LANGUAGE KindSignatures #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE TypeApplications #-}  {- | This defines the types of the LSP "metamodel", which is a machine-readable format specifying the
+ quickcheck/Language/LSP/Protocol/QuickCheck.hs view
@@ -0,0 +1,6 @@+-- | Provides 'Arbitrary' instances for protocol types.+module Language.LSP.Protocol.QuickCheck (module Export) where++import Language.LSP.Protocol.QuickCheck.Common as Export+import Language.LSP.Protocol.QuickCheck.Message as Export+import Language.LSP.Protocol.QuickCheck.Types as Export
+ quickcheck/Language/LSP/Protocol/QuickCheck/Common.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE UndecidableInstances #-}++module Language.LSP.Protocol.QuickCheck.Common where++import Data.Foldable+import Data.Row qualified as R+import Data.Row.Records qualified as R+import Data.Void+import GHC.TypeLits+import Language.LSP.Protocol.Message+import Language.LSP.Protocol.Types+import Test.QuickCheck+import Test.QuickCheck.Instances ()++instance (Arbitrary a, Arbitrary b) => Arbitrary (a |? b) where+  arbitrary = oneof [InL <$> arbitrary, InR <$> arbitrary]+  shrink = genericShrink++instance Arbitrary Null where+  arbitrary = pure Null++instance (R.AllUniqueLabels r, R.Forall r Arbitrary) => Arbitrary (R.Rec r) where+  arbitrary = R.fromLabelsA @Arbitrary $ \_l -> arbitrary+  shrink record = R.traverse @Arbitrary @[] shrink record++instance Arbitrary UInt where+  arbitrary = fromInteger <$> arbitrary++instance Arbitrary Uri where+  arbitrary = Uri <$> arbitrary+  shrink = genericShrink++instance Arbitrary (LspId m) where+  arbitrary = oneof [IdInt <$> arbitrary, IdString <$> arbitrary]+  shrink = genericShrink++instance (LspEnum a) => Arbitrary (AsLspEnum a) where+  arbitrary = elements $ AsLspEnum <$> toList knownValues++instance (KnownSymbol s) => Arbitrary (AString s) where+  arbitrary = pure $ AString++instance (KnownNat n) => Arbitrary (AnInteger n) where+  arbitrary = pure $ AnInteger
+ quickcheck/Language/LSP/Protocol/QuickCheck/Message.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE UndecidableInstances #-}+-- See Note [Arbitary Maybe Void]+{-# OPTIONS_GHC -Wno-simplifiable-class-constraints #-}++module Language.LSP.Protocol.QuickCheck.Message where++import Data.Row qualified as R+import Data.Row.Records qualified as R+import Data.Void+import Language.LSP.Protocol.Message+import Language.LSP.Protocol.QuickCheck.Types+import Language.LSP.Protocol.Types+import Test.QuickCheck+import Test.QuickCheck.Arbitrary.Generic+import Test.QuickCheck.Instances ()++deriving via (GenericArbitrary RequestMessage) instance Arbitrary RequestMessage+deriving via (GenericArbitrary ResponseMessage) instance Arbitrary ResponseMessage+deriving via (GenericArbitrary NotificationMessage) instance Arbitrary NotificationMessage++-- See Note [Arbitary Maybe Void]+instance {-# OVERLAPS #-} Arbitrary (Maybe Void) where+  arbitrary = pure Nothing++-- FIXME: there is something funny with the way we're representing error data.+-- Should be able to have these instances!+{-+deriving via (GenericArbitrary ResponseError) instance Arbitrary ResponseError++deriving via+  (GenericArbitrary (TResponseError m))+  instance+    (Arbitrary (ErrorData m)) => Arbitrary (TResponseError m)++deriving via+  (GenericArbitrary (TResponseMEssage m))+  instance+    (Arbitrary (MessageResult m), Arbitrary (ErrorData m)) => Arbitrary (TResponseMEssage m)+-}++instance (ErrorData m ~ Maybe Void) => Arbitrary (TResponseError m) where+  arbitrary = TResponseError <$> arbitrary <*> arbitrary <*> pure Nothing+  shrink = genericShrink++instance Arbitrary ResponseError where+  arbitrary = ResponseError <$> arbitrary <*> arbitrary <*> pure Nothing+  shrink = genericShrink++-- See Note [Arbitary Maybe Void]+deriving via+  (GenericArbitrary (TResponseMessage m))+  instance+    (Arbitrary (MessageResult m), ErrorData m ~ Maybe Void) => Arbitrary (TResponseMessage m)++-- These require a method singleton. We need something like SingI from+-- singletons to pass that into the class instance+{-+instance (Arbitrary (MessageParams m)) => Arbitrary (TRequestMessage m) where+  arbitrary = TRequestMessage <$> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary+  shrink = genericShrink++instance (Arbitrary (MessageParams m)) => Arbitrary (TNotificationMessage m) where+  arbitrary = TNotificationMessage <$> arbitrary <*> arbitrary <*> arbitrary+  shrink = genericShrink+-}++{- Note [Arbitary Maybe Void]+For methods that don't have error data, we say that their error data type is 'Void'.+This means that the error data field has type 'Maybe Void', i.e. can only be 'Nothing',+which is what we want.++However, we have a problem with the Arbitrary instance. There is an 'Arbitrary (Maybe a)'+instance which depends on an 'Arbitrary a' instance - but there is no 'Arbitrary Void'+instance, and apparently can't be since we can't make an empty generator.++So we cheat a bit:+- Define an overlapping 'Arbitrary (Maybe Void)' instance+- Define the instances for response messages to require 'Arbitrary (Maybe (ErrorData m))',+  which delays GHC picking the actual instance until the use site, so it can pick+  the overlapping one.+-}
+ quickcheck/Language/LSP/Protocol/QuickCheck/Types.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE TemplateHaskell #-}++module Language.LSP.Protocol.QuickCheck.Types where++import Data.Traversable+import Language.Haskell.TH+import Language.LSP.Protocol.Meta+import Language.LSP.Protocol.QuickCheck.Common+import Language.LSP.Protocol.Types+import Test.QuickCheck+import Test.QuickCheck.Arbitrary.Generic++$( let+    sderiving = for structNames $ \sname ->+      let viaT = ConT ''GenericArbitrary `AppT` ConT sname+          arb = ConT ''Arbitrary `AppT` ConT sname+       in pure $ StandaloneDerivD (Just (ViaStrategy viaT)) [] arb+    aderiving = for aliasNames $ \aname ->+      let arb = ConT ''Arbitrary `AppT` ConT aname+       in pure $ StandaloneDerivD (Just NewtypeStrategy) [] arb+    ederiving = for enumNames $ \ename ->+      let viaT = ConT ''AsLspEnum `AppT` ConT ename+          arb = ConT ''Arbitrary `AppT` ConT ename+       in pure $ StandaloneDerivD (Just (ViaStrategy viaT)) [] arb+    in+    mconcat <$> sequence [sderiving, aderiving, ederiving]+ )
src/Data/IxMap.hs view
@@ -1,6 +1,3 @@-{-# LANGUAGE BangPatterns #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeInType #-} {-# LANGUAGE ViewPatterns #-}
src/Data/Row/Aeson.hs view
@@ -1,8 +1,3 @@-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE ScopedTypeVariables #-}-{-# LANGUAGE TypeApplications #-}-{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -Wno-orphans #-} @@ -31,6 +26,8 @@ import Data.Proxy import Data.String +import Language.LSP.Protocol.Types.Common ((.:!?))+ -- `aeson` does not need such a typeclass because it generates code per-instance -- that handles this, whereas we want to work generically. @@ -54,8 +51,8 @@   parseJSONEntry :: Object -> String -> Parser a  instance {-# OVERLAPPING #-} FromJSON a => FromJSONEntry (Maybe a) where-  -- Parse Nothing fields as optional-  parseJSONEntry o k = o .:? (fromString k)+  -- Parse Nothing fields as optional, accepting Null to mean "missing"+  parseJSONEntry o k = o .:!? (fromString k)  instance {-# OVERLAPPABLE #-} FromJSON a => FromJSONEntry a where   parseJSONEntry o k = o .: (fromString k)
src/Data/Row/Hashable.hs view
@@ -1,8 +1,3 @@-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE ScopedTypeVariables #-}-{-# LANGUAGE TypeApplications #-}-{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -Wno-orphans #-} 
src/Language/LSP/Protocol/Capabilities.hs view
@@ -1,8 +1,6 @@ {-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RankNTypes #-}  module Language.LSP.Protocol.Capabilities (   fullCaps,
src/Language/LSP/Protocol/Lens.hs view
@@ -1,12 +1,8 @@ module Language.LSP.Protocol.Lens (   -- * Generated lens classes-  module Lens,-  -- Custom lets classes for Type   module TypesLens,-  -- Custom lens classes for Message   module MessageLens, ) where -import Language.LSP.Protocol.Internal.Lens as Lens import Language.LSP.Protocol.Message.Lens as MessageLens import Language.LSP.Protocol.Types.Lens as TypesLens
src/Language/LSP/Protocol/Message/Lens.hs view
@@ -4,9 +4,9 @@ module Language.LSP.Protocol.Message.Lens where  import Control.Lens.TH-import Language.LSP.Protocol.Internal.Lens import Language.LSP.Protocol.Message.Registration import Language.LSP.Protocol.Message.Types+import Language.LSP.Protocol.Types.Lens  makeFieldsNoPrefix ''TRegistration makeFieldsNoPrefix ''TUnregistration
src/Language/LSP/Protocol/Message/Method.hs view
@@ -1,12 +1,8 @@-{-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE QuantifiedConstraints #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeInType #-}-{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableSuperClasses #-} {-# OPTIONS_GHC -Wno-orphans #-} 
src/Language/LSP/Protocol/Message/Parsing.hs view
@@ -1,7 +1,4 @@-{-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE LambdaCase #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TypeInType #-}  module Language.LSP.Protocol.Message.Parsing where
src/Language/LSP/Protocol/Message/Registration.hs view
@@ -1,10 +1,5 @@ {-# LANGUAGE DeriveAnyClass #-}-{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE ExistentialQuantification #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeInType #-} 
src/Language/LSP/Protocol/Message/Types.hs view
@@ -1,8 +1,4 @@-{-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeInType #-}  module Language.LSP.Protocol.Message.Types where@@ -12,7 +8,6 @@ import Language.LSP.Protocol.Message.Meta import Language.LSP.Protocol.Message.Method () import Language.LSP.Protocol.Types-import Language.LSP.Protocol.Types.Common import Language.LSP.Protocol.Utils.Misc  import Data.Aeson hiding (Null)@@ -84,7 +79,7 @@           ResponseError             <$> v .: "code"             <*> v .: "message"-            <*> v .:? "data"+            <*> v .:!? "data"      in fmap go . errorCode    where     go :: ResponseError -> ResponseError@@ -176,7 +171,7 @@           TResponseError             <$> v .: "code"             <*> v .: "message"-            <*> v .:? "data"+            <*> v .:!? "data"      in fmap go . errorCode    where     go :: TResponseError m -> TResponseError m@@ -219,9 +214,8 @@   parseJSON = withObject "Response" $ \o -> do     _jsonrpc <- o .: "jsonrpc"     _id <- o .: "id"-    -- It is important to use .:! so that "result = null" (without error) gets decoded as Just Null-    _result <- o .:! "result"-    _error <- o .:? "error"+    _result <- o .:!? "result"+    _error <- o .:!? "error"     result <- case (_error, _result) of       (Just err, Nothing) -> pure $ Left err       (Nothing, Just res) -> pure $ Right res
+ src/Language/LSP/Protocol/Meta.hs view
@@ -0,0 +1,3 @@+module Language.LSP.Protocol.Meta (module Export) where++import Language.LSP.Protocol.Internal.Meta as Export
src/Language/LSP/Protocol/Types/Common.hs view
@@ -1,12 +1,8 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveAnyClass #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE DeriveTraversable #-} {-# LANGUAGE DerivingStrategies #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE LambdaCase #-}-{-# LANGUAGE TypeOperators #-}  -- | Common types that aren't in the specification module Language.LSP.Protocol.Types.Common (@@ -21,17 +17,16 @@   nullToMaybe,   maybeToNull,   (.=?),+  (.:!?), ) where +import Control.Applicative import Control.DeepSeq import Control.Lens import Data.Aeson hiding (Null) import Data.Aeson qualified as J-#if MIN_VERSION_aeson(2,0,0)-import qualified Data.Aeson.KeyMap   as KM-#else-import qualified Data.HashMap.Strict   as KM-#endif+import Data.Aeson.KeyMap qualified as KM+import Data.Aeson.Types qualified as J import Data.Hashable import Data.Int (Int32) import Data.Mod.Word@@ -191,3 +186,30 @@ k .=? v = case v of   Just v' -> [fromString k J..= v']   Nothing -> mempty++{- |+Parse a value optionally. This behaves similarly to 'J..:!' and+'J..:?', but differs in how it handles 'Null':++    * If 'Null' can be converted to the desired type...+        * 'J.:?': the result is success with 'Nothing'+        * 'J.:!': the result is success with 'Just <value>'+        * '.:!?': the result is success with 'Just <value>'+    * If 'Null' cannot be converted to the desired type...+        * 'J.:?': the result is success with 'Nothing'+        * 'J.:!': the result is failure+        * '.:!?': the result is success with 'Nothing'++That is, we allow 'Null' to mean either 'Nothing' or 'Just <value>',+with the latter taking priority.+-}+(.:!?) :: (J.FromJSON v) => Object -> Key -> J.Parser (Maybe v)+o .:!? k =+  -- If 'Null' can be converted to the desired type this succeeds+  -- with Just the converted value+  o J..:! k+    -- otherwise...+    <|>+    -- If 'Null' cannot be converted to the desired type this succeeds+    -- with Nothing+    o J..:? k
src/Language/LSP/Protocol/Types/Edit.hs view
@@ -1,6 +1,5 @@ {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TypeOperators #-}  module Language.LSP.Protocol.Types.Edit where 
src/Language/LSP/Protocol/Types/Lens.hs view
@@ -3,9 +3,8 @@  module Language.LSP.Protocol.Types.Lens where -import Control.Lens.TH-import Language.LSP.Protocol.Internal.Lens+import Language.LSP.Protocol.Internal.Meta import Language.LSP.Protocol.Types.SemanticTokens+import Language.LSP.Protocol.Utils.Misc -makeFieldsNoPrefix ''SemanticTokenAbsolute-makeFieldsNoPrefix ''SemanticTokenRelative+$(genLenses (structNames ++ [''SemanticTokenAbsolute, ''SemanticTokenRelative]))
src/Language/LSP/Protocol/Types/LspEnum.hs view
@@ -42,17 +42,17 @@ {- | Newtype for @deriving via@ to get standard JSON and 'IsString' instances in terms of the 'LspEnum'  class methods. -}-newtype AsLspEnum a b = AsLspEnum a+newtype AsLspEnum a = AsLspEnum a -instance (LspEnum a, EnumBaseType a ~ b, Aeson.ToJSON b) => Aeson.ToJSON (AsLspEnum a b) where+instance (LspEnum a, EnumBaseType a ~ b, Aeson.ToJSON b) => Aeson.ToJSON (AsLspEnum a) where   toJSON (AsLspEnum e) = Aeson.toJSON (toEnumBaseType e) -instance (LspEnum a, EnumBaseType a ~ b, Aeson.FromJSON b, Show b) => Aeson.FromJSON (AsLspEnum a b) where+instance (LspEnum a, EnumBaseType a ~ b, Aeson.FromJSON b, Show b) => Aeson.FromJSON (AsLspEnum a) where   parseJSON val = do     v <- Aeson.parseJSON val     case fromEnumBaseType v of       Just x -> pure $ AsLspEnum x       Nothing -> fail $ "unrecognized enum value " ++ show v -instance (LspOpenEnum a, EnumBaseType a ~ b, b ~ Text.Text) => IsString (AsLspEnum a b) where+instance (LspOpenEnum a, EnumBaseType a ~ b, b ~ Text.Text) => IsString (AsLspEnum a) where   fromString s = AsLspEnum $ fromOpenEnumBaseType (Text.pack s)
src/Language/LSP/Protocol/Types/SemanticTokens.hs view
@@ -1,7 +1,6 @@ {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE OverloadedLists #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-}  module Language.LSP.Protocol.Types.SemanticTokens where 
src/Language/LSP/Protocol/Types/Uri.hs view
@@ -1,10 +1,5 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE InstanceSigs #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeSynonymInstances #-}  module Language.LSP.Protocol.Types.Uri (   Uri (..),
src/Language/LSP/Protocol/Types/Uri/OsPath.hs view
@@ -1,7 +1,6 @@ {- ORMOLU_DISABLE -}  {-# LANGUAGE CPP                 #-}-{-# LANGUAGE ScopedTypeVariables #-}  #if MIN_VERSION_filepath(1,4,100) #define OS_PATH 1
src/Language/LSP/Protocol/Types/WatchKinds.hs view
@@ -7,7 +7,7 @@ -- WatchKind is better represented as a Set than as enum. As the lsp spec -- defines them as an enum, these helper functions help bridge the difference. --- |Tests whether `WatchKind_Create` is contained in the provided WatchKind enum+-- | Tests whether `WatchKind_Create` is contained in the provided WatchKind enum containsCreate :: WatchKind -> Bool containsCreate WatchKind_Create = True containsCreate (WatchKind_Custom 3) = True@@ -15,7 +15,7 @@ containsCreate (WatchKind_Custom 7) = True containsCreate _ = False --- |Tests whether `WatchKind_Change` is contained in the provided WatchKind enum+-- | Tests whether `WatchKind_Change` is contained in the provided WatchKind enum containsChange :: WatchKind -> Bool containsChange WatchKind_Change = True containsChange (WatchKind_Custom 3) = True@@ -23,7 +23,7 @@ containsChange (WatchKind_Custom 7) = True containsChange _ = False --- |Tests whether `WatchKind_Delete` is contained in the provided WatchKind enum+-- | Tests whether `WatchKind_Delete` is contained in the provided WatchKind enum containsDelete :: WatchKind -> Bool containsDelete WatchKind_Delete = True containsDelete (WatchKind_Custom 5) = True@@ -31,7 +31,7 @@ containsDelete (WatchKind_Custom 7) = True containsDelete _ = False -{- |Combine a set of WatchKind types into a new WatchKind type that accurately+{- | Combine a set of WatchKind types into a new WatchKind type that accurately  represents the set -} combineWatchKinds :: Set WatchKind -> WatchKind
src/Language/LSP/Protocol/Utils/Misc.hs view
@@ -1,5 +1,4 @@ {-# LANGUAGE LambdaCase #-}-{-# LANGUAGE RankNTypes #-} {-# LANGUAGE TemplateHaskell #-}  module Language.LSP.Protocol.Utils.Misc (@@ -10,9 +9,13 @@   lspOptionsUntagged,   prettyJSON,   ViaJSON (..),+  genLenses, ) where +import Control.Lens.Internal.FieldTH+import Control.Lens.TH import Control.Monad+import Control.Monad.State import Data.Aeson import Data.Aeson.Text as Aeson import Data.Foldable qualified as F@@ -20,7 +23,7 @@ import Data.Functor.WithIndex.Instances qualified () import Data.List hiding (group) import Data.Maybe (mapMaybe)-import Language.Haskell.TH+import Language.Haskell.TH as TH import Prettyprinter  -- ---------------------------------------------------------------------@@ -133,3 +136,18 @@  instance ToJSON a => Pretty (ViaJSON a) where   pretty (ViaJSON a) = prettyJSON $ toJSON a++{- | Given a list of type names, make a splice that generates the lens typeclass declarations+for all of them. Defined here to avoid stage restrictions.+-}+genLenses :: [TH.Name] -> TH.Q [TH.Dec]+genLenses names = do+  let+    -- We need to use the internals of the lens TH machinery so that we can do this+    -- in one go without generating duplicate classes.+    opticMaker :: TH.Name -> HasFieldClasses [TH.Dec]+    opticMaker n = do+      (TH.TyConI d) <- lift $ TH.reify n+      makeFieldOpticsForDec' classUnderscoreNoPrefixFields d+  decss <- flip evalStateT mempty $ traverse opticMaker names+  pure $ concat decss
src/Language/LSP/Protocol/Utils/SMethodMap.hs view
@@ -1,8 +1,6 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE MagicHash #-}-{-# LANGUAGE PolyKinds #-}-{-# LANGUAGE RankNTypes #-}  module Language.LSP.Protocol.Utils.SMethodMap (   SMethodMap,
test/JsonSpec.hs view
@@ -1,18 +1,11 @@ {-# LANGUAGE DerivingStrategies #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-}-{-# LANGUAGE StandaloneDeriving #-}-{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeInType #-}-{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} -- we're using some deprecated stuff from the LSP spec, that's fine {-# OPTIONS_GHC -fno-warn-deprecations #-}-{-# OPTIONS_GHC -fno-warn-orphans #-}  -- | Test for JSON serialization module JsonSpec where@@ -20,65 +13,74 @@ import Language.LSP.Protocol.Message import Language.LSP.Protocol.Types +import Language.LSP.Protocol.QuickCheck ()+ import Data.Aeson qualified as J import Data.List (isPrefixOf)-import Data.Row qualified as R-import Data.Row.Records qualified as R-import Data.Void+import Data.Row import Test.Hspec import Test.Hspec.QuickCheck import Test.QuickCheck hiding (Success) import Test.QuickCheck.Instances () --- import Debug.Trace -- ---------------------------------------------------------------------  {-# ANN module ("HLint: ignore Redundant do" :: String) #-} -main :: IO ()-main = hspec spec- spec :: Spec spec = do-  describe "dispatcher" jsonSpec-  describe "RequestMessage" requestMessageSpec-  describe "ResponseMessage" responseMessageSpec-  describe "NotificationMesssage" notificationMessageSpec+  describe "MarkedString" $ do+    prop "roundtrip" (propertyJsonRoundtrip :: MarkedString -> Property) --- ---------------------------------------------------------------------+  describe "MarkupContent" $ do+    prop "roundtrip" (propertyJsonRoundtrip :: MarkupContent -> Property) -jsonSpec :: Spec-jsonSpec = do-  describe "General JSON instances round trip" $ do-    -- DataTypesJSON-    prop "MarkedString" (propertyJsonRoundtrip :: MarkedString -> Property)-    prop "MarkupContent" (propertyJsonRoundtrip :: MarkupContent -> Property)-    prop "TextDocumentContentChangeEvent" (propertyJsonRoundtrip :: TextDocumentContentChangeEvent -> Property)-    prop "WatchedFiles" (propertyJsonRoundtrip :: DidChangeWatchedFilesRegistrationOptions -> Property)-    prop-      "ResponseMessage Hover"-      (propertyJsonRoundtrip :: TResponseMessage 'Method_TextDocumentHover -> Property)-  describe "JSON decoding regressions" $-    it "CompletionItem" $+  describe "TextDocumentContentChangeEvent" $ do+    prop "roundtrip" (propertyJsonRoundtrip :: TextDocumentContentChangeEvent -> Property)++  describe "WatchedFiles" $ do+    prop "roundtrip" (propertyJsonRoundtrip :: DidChangeWatchedFilesRegistrationOptions -> Property)++  describe "Registration" $ do+    -- Registration has a 'Maybe Value' field, so this test checks that 'Maybe Null' roundtrips properly+    prop "roundtrip" (propertyJsonRoundtrip :: Registration -> Property)++  describe "CompletionList" $ do+    it "handles optional field set to null in record" $ do+      J.eitherDecode "{ \"isIncomplete\" : true, \"itemDefaults\" : { \"data\" : null }, \"items\": [] }"+        `shouldBe` Right+          ( CompletionList+              True+              (Just (#commitCharacters .== Nothing .+ #editRange .== Nothing .+ #insertTextFormat .== Nothing .+ #insertTextMode .== Nothing .+ #data .== Just J.Null))+              mempty+          )++  describe "CompletionItem" $ do+    it "example" $       (J.decode "{\"jsonrpc\":\"2.0\",\"result\":[{\"label\":\"raisebox\"}],\"id\":1}" :: Maybe (TResponseMessage 'Method_TextDocumentCompletion))         `shouldNotBe` Nothing -requestMessageSpec :: Spec-requestMessageSpec = do-  describe "edge cases" $ do+  describe "RequestMessage" $ do     it "handles missing params field" $ do       J.eitherDecode "{ \"jsonrpc\": \"2.0\", \"id\": 15, \"method\": \"shutdown\"}"         `shouldBe` Right (TRequestMessage "2.0" (IdInt 15) SMethod_Shutdown Nothing)+    -- The 'params' field on a RequestMessage is optional _and_ null is _not_ a valid value. Check that we correctly parse null as 'Nothing'+    it "handles params field set to null" $ do+      J.eitherDecode "{ \"jsonrpc\": \"2.0\", \"id\": 15, \"method\": \"shutdown\", \"params\": null }"+        `shouldBe` Right (TRequestMessage "2.0" (IdInt 15) SMethod_Shutdown Nothing) -responseMessageSpec :: Spec-responseMessageSpec = do-  describe "edge cases" $ do-    it "decodes result = null" $ do-      let input = "{\"jsonrpc\": \"2.0\", \"id\": 123, \"result\": null}"+  describe "ResponseMessage" $ do+    prop+      "Hover roundtrip"+      (propertyJsonRoundtrip :: TResponseMessage 'Method_TextDocumentHover -> Property)+    -- The 'data' field on a ResponseError is optional _and_ null is a valid value. Check that we correctly parse null as 'Just Null'+    it "decodes error data = null" $ do+      let input = "{\"jsonrpc\": \"2.0\", \"id\": 123, \"error\": { \"code\": -32700, \"message\": \"oh no\", \"data\": null }}"        in J.decode input             `shouldBe` Just-              ((TResponseMessage "2.0" (Just (IdInt 123)) (Right $ InL J.Null)) :: TResponseMessage 'Method_WorkspaceExecuteCommand)-  describe "invalid JSON" $ do+              ( (TResponseMessage "2.0" (Just (IdInt 123)) (Left $ ResponseError (InR ErrorCodes_ParseError) "oh no" (Just J.Null))) ::+                  TResponseMessage ('Method_CustomMethod "hello")+              )     it "throws if neither result nor error is present" $ do       (J.eitherDecode "{\"jsonrpc\":\"2.0\",\"id\":1}" :: Either String (TResponseMessage 'Method_Initialize))         `shouldBe` Left ("Error in $: both error and result cannot be Nothing")@@ -88,10 +90,13 @@           Either String (TResponseMessage 'Method_Initialize)         )         `shouldSatisfy` (either (\err -> "Error in $: both error and result cannot be present" `isPrefixOf` err) (\_ -> False))+    it "decodes result = null" $ do+      let input = "{\"jsonrpc\": \"2.0\", \"id\": 123, \"result\": null}"+       in J.decode input+            `shouldBe` Just+              ((TResponseMessage "2.0" (Just (IdInt 123)) (Right $ InL J.Null)) :: TResponseMessage 'Method_WorkspaceExecuteCommand) -notificationMessageSpec :: Spec-notificationMessageSpec = do-  describe "edge cases" $ do+  describe "NotificationMessage" $ do     it "handles missing params field" $ do       J.eitherDecode "{ \"jsonrpc\": \"2.0\", \"method\": \"exit\"}"         `shouldBe` Right (TNotificationMessage "2.0" SMethod_Exit Nothing)@@ -100,125 +105,3 @@  propertyJsonRoundtrip :: (Eq a, Show a, J.ToJSON a, J.FromJSON a) => a -> Property propertyJsonRoundtrip a = J.Success a === J.fromJSON (J.toJSON a)---- -----------------------------------------------------------------------instance (Arbitrary a, Arbitrary b) => Arbitrary (a |? b) where-  arbitrary = oneof [InL <$> arbitrary, InR <$> arbitrary]-  shrink = genericShrink--instance Arbitrary Null where-  arbitrary = pure Null--instance (R.AllUniqueLabels r, R.Forall r Arbitrary) => Arbitrary (R.Rec r) where-  arbitrary = R.fromLabelsA @Arbitrary $ \_l -> arbitrary-  shrink record = R.traverse @Arbitrary @[] shrink record--deriving newtype instance Arbitrary MarkedString--instance Arbitrary MarkupContent where-  arbitrary = MarkupContent <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary MarkupKind where-  arbitrary = oneof [pure MarkupKind_PlainText, pure MarkupKind_Markdown]-  shrink = genericShrink--instance Arbitrary UInt where-  arbitrary = fromInteger <$> arbitrary--instance Arbitrary Uri where-  arbitrary = Uri <$> arbitrary-  shrink = genericShrink---- deriving newtype instance Arbitrary URI--instance Arbitrary WorkspaceFolder where-  arbitrary = WorkspaceFolder <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary RelativePattern where-  arbitrary = RelativePattern <$> arbitrary <*> arbitrary-  shrink = genericShrink--deriving newtype instance Arbitrary Pattern-deriving newtype instance Arbitrary GlobPattern--instance Arbitrary Position where-  arbitrary = Position <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary Location where-  arbitrary = Location <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary Range where-  arbitrary = Range <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary Hover where-  arbitrary = Hover <$> arbitrary <*> arbitrary-  shrink = genericShrink--instance {-# OVERLAPPING #-} Arbitrary (Maybe Void) where-  arbitrary = pure Nothing--instance (ErrorData m ~ Maybe Void) => Arbitrary (TResponseError m) where-  arbitrary = TResponseError <$> arbitrary <*> arbitrary <*> pure Nothing-  shrink = genericShrink--instance Arbitrary ResponseError where-  arbitrary = ResponseError <$> arbitrary <*> arbitrary <*> pure Nothing-  shrink = genericShrink--instance (Arbitrary (MessageResult m), ErrorData m ~ Maybe Void) => Arbitrary (TResponseMessage m) where-  arbitrary = TResponseMessage <$> arbitrary <*> arbitrary <*> arbitrary-  shrink = genericShrink--instance Arbitrary (LspId m) where-  arbitrary = oneof [IdInt <$> arbitrary, IdString <$> arbitrary]-  shrink = genericShrink--instance Arbitrary ErrorCodes where-  arbitrary =-    elements-      [ ErrorCodes_ParseError-      , ErrorCodes_InvalidRequest-      , ErrorCodes_MethodNotFound-      , ErrorCodes_InvalidParams-      , ErrorCodes_InternalError-      , ErrorCodes_ServerNotInitialized-      , ErrorCodes_UnknownErrorCode-      ]-  shrink = genericShrink--instance Arbitrary LSPErrorCodes where-  arbitrary =-    elements-      [ LSPErrorCodes_RequestFailed-      , LSPErrorCodes_ServerCancelled-      , LSPErrorCodes_ContentModified-      , LSPErrorCodes_RequestCancelled-      ]-  shrink = genericShrink---- -----------------------------------------------------------------------instance Arbitrary DidChangeWatchedFilesRegistrationOptions where-  arbitrary = DidChangeWatchedFilesRegistrationOptions <$> arbitrary-  shrink = genericShrink--instance Arbitrary FileSystemWatcher where-  arbitrary = FileSystemWatcher <$> arbitrary <*> arbitrary-  shrink = genericShrink---- TODO: watchKind is weird-instance Arbitrary WatchKind where-  arbitrary = oneof [pure WatchKind_Change, pure WatchKind_Create, pure WatchKind_Delete]-  shrink = genericShrink---- -------------------------------------------------------------------------instance Arbitrary TextDocumentContentChangeEvent where-  arbitrary = TextDocumentContentChangeEvent <$> arbitrary-  shrink = genericShrink
test/SemanticTokensSpec.hs view
@@ -1,5 +1,4 @@ {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TypeApplications #-}  module SemanticTokensSpec where 
test/ServerCapabilitiesSpec.hs view
@@ -1,6 +1,5 @@ {-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-}  module ServerCapabilitiesSpec where 
test/URIFilePathSpec.hs view
@@ -1,6 +1,5 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-} -- We're testing our own deprecated function here! {-# OPTIONS_GHC -Wno-deprecations #-} {-# OPTIONS_GHC -Wno-incomplete-uni-patterns #-}@@ -14,12 +13,12 @@  #ifdef OS_PATH import qualified System.OsPath           as OsPath+import Control.Exception (throwIO)+import Data.Maybe (fromJust) #endif -import Control.Exception (throwIO) import Control.Monad (when) import Data.List-import Data.Maybe (fromJust) import Data.Text (Text, pack) import Language.LSP.Protocol.Types