From 44fd76b35b75ffcba449783dc3c483eb76b70711 Mon Sep 17 00:00:00 2001 From: Michael Peyton Jones Date: Sun, 14 Jan 2024 20:15:33 +0000 Subject: [PATCH] Handle clients sending "null" instead of a missing field (#543) * Accept null in place of a missing value We sometimes see reports where HLS is not working because the client sends us slightly wrong JSON. We should follow the principle of robustness and try to accept this where we can - following the spec precisely is hard! The specific case we hadle here is accepting null to mean "missing" when null is not a valid value for the type. Currently we will treat it as a _present_ value and then fail to interpret null as a value of the type. * Mark lsp-types generated code as generated for github * typo * Fix a few more * Refactor tests a little * Changelog * Improve comment --- .gitattributes | 2 +- lsp-types/.gitattributes | 1 + lsp-types/ChangeLog.md | 1 + .../Types/ApplyWorkspaceEditParams.hs | 2 +- .../Types/ApplyWorkspaceEditResult.hs | 2 +- .../Internal/Types/BaseSymbolInformation.hs | 2 +- .../Types/CallHierarchyClientCapabilities.hs | 2 +- .../Types/CallHierarchyIncomingCallsParams.hs | 2 +- .../Internal/Types/CallHierarchyItem.hs | 2 +- .../Internal/Types/CallHierarchyOptions.hs | 2 +- .../Types/CallHierarchyOutgoingCallsParams.hs | 2 +- .../Types/CallHierarchyPrepareParams.hs | 2 +- .../Types/CallHierarchyRegistrationOptions.hs | 2 +- .../Internal/Types/ChangeAnnotation.hs | 2 +- .../Internal/Types/ClientCapabilities.hs | 2 +- .../LSP/Protocol/Internal/Types/CodeAction.hs | 2 +- .../Types/CodeActionClientCapabilities.hs | 2 +- .../Internal/Types/CodeActionContext.hs | 2 +- .../Internal/Types/CodeActionOptions.hs | 2 +- .../Internal/Types/CodeActionParams.hs | 2 +- .../Types/CodeActionRegistrationOptions.hs | 2 +- .../LSP/Protocol/Internal/Types/CodeLens.hs | 2 +- .../Types/CodeLensClientCapabilities.hs | 2 +- .../Internal/Types/CodeLensOptions.hs | 2 +- .../Protocol/Internal/Types/CodeLensParams.hs | 2 +- .../Types/CodeLensRegistrationOptions.hs | 2 +- .../CodeLensWorkspaceClientCapabilities.hs | 2 +- .../Internal/Types/ColorPresentation.hs | 2 +- .../Internal/Types/ColorPresentationParams.hs | 2 +- .../LSP/Protocol/Internal/Types/Command.hs | 2 +- .../Types/CompletionClientCapabilities.hs | 2 +- .../Internal/Types/CompletionContext.hs | 2 +- .../Protocol/Internal/Types/CompletionItem.hs | 2 +- .../Types/CompletionItemLabelDetails.hs | 2 +- .../Protocol/Internal/Types/CompletionList.hs | 2 +- .../Internal/Types/CompletionOptions.hs | 2 +- .../Internal/Types/CompletionParams.hs | 2 +- .../Types/CompletionRegistrationOptions.hs | 2 +- .../Internal/Types/ConfigurationItem.hs | 2 +- .../LSP/Protocol/Internal/Types/CreateFile.hs | 2 +- .../Internal/Types/CreateFileOptions.hs | 2 +- .../Types/DeclarationClientCapabilities.hs | 2 +- .../Internal/Types/DeclarationOptions.hs | 2 +- .../Internal/Types/DeclarationParams.hs | 2 +- .../Types/DeclarationRegistrationOptions.hs | 2 +- .../Types/DefinitionClientCapabilities.hs | 2 +- .../Internal/Types/DefinitionOptions.hs | 2 +- .../Internal/Types/DefinitionParams.hs | 2 +- .../Types/DefinitionRegistrationOptions.hs | 2 +- .../LSP/Protocol/Internal/Types/DeleteFile.hs | 2 +- .../Internal/Types/DeleteFileOptions.hs | 2 +- .../LSP/Protocol/Internal/Types/Diagnostic.hs | 2 +- .../Types/DiagnosticClientCapabilities.hs | 2 +- .../Internal/Types/DiagnosticOptions.hs | 2 +- .../Types/DiagnosticRegistrationOptions.hs | 2 +- .../DiagnosticWorkspaceClientCapabilities.hs | 2 +- ...idChangeConfigurationClientCapabilities.hs | 2 +- ...dChangeConfigurationRegistrationOptions.hs | 2 +- ...DidChangeWatchedFilesClientCapabilities.hs | 2 +- .../Types/DidSaveTextDocumentParams.hs | 2 +- .../Types/DocumentColorClientCapabilities.hs | 2 +- .../Internal/Types/DocumentColorOptions.hs | 2 +- .../Internal/Types/DocumentColorParams.hs | 2 +- .../Types/DocumentColorRegistrationOptions.hs | 2 +- .../Types/DocumentDiagnosticParams.hs | 2 +- .../DocumentFormattingClientCapabilities.hs | 2 +- .../Types/DocumentFormattingOptions.hs | 2 +- .../Types/DocumentFormattingParams.hs | 2 +- .../DocumentFormattingRegistrationOptions.hs | 2 +- .../Internal/Types/DocumentHighlight.hs | 2 +- .../DocumentHighlightClientCapabilities.hs | 2 +- .../Types/DocumentHighlightOptions.hs | 2 +- .../Internal/Types/DocumentHighlightParams.hs | 2 +- .../DocumentHighlightRegistrationOptions.hs | 2 +- .../Protocol/Internal/Types/DocumentLink.hs | 2 +- .../Types/DocumentLinkClientCapabilities.hs | 2 +- .../Internal/Types/DocumentLinkOptions.hs | 2 +- .../Internal/Types/DocumentLinkParams.hs | 2 +- .../Types/DocumentLinkRegistrationOptions.hs | 2 +- ...umentOnTypeFormattingClientCapabilities.hs | 2 +- .../Types/DocumentOnTypeFormattingOptions.hs | 2 +- ...mentOnTypeFormattingRegistrationOptions.hs | 2 +- ...cumentRangeFormattingClientCapabilities.hs | 2 +- .../Types/DocumentRangeFormattingOptions.hs | 2 +- .../Types/DocumentRangeFormattingParams.hs | 2 +- ...umentRangeFormattingRegistrationOptions.hs | 2 +- .../Protocol/Internal/Types/DocumentSymbol.hs | 2 +- .../Types/DocumentSymbolClientCapabilities.hs | 2 +- .../Internal/Types/DocumentSymbolOptions.hs | 2 +- .../Internal/Types/DocumentSymbolParams.hs | 2 +- .../DocumentSymbolRegistrationOptions.hs | 2 +- .../Types/ExecuteCommandClientCapabilities.hs | 2 +- .../Internal/Types/ExecuteCommandOptions.hs | 2 +- .../Internal/Types/ExecuteCommandParams.hs | 2 +- .../ExecuteCommandRegistrationOptions.hs | 2 +- .../Internal/Types/ExecutionSummary.hs | 2 +- .../Types/FileOperationClientCapabilities.hs | 2 +- .../Internal/Types/FileOperationFilter.hs | 2 +- .../Internal/Types/FileOperationOptions.hs | 2 +- .../Internal/Types/FileOperationPattern.hs | 2 +- .../Types/FileOperationPatternOptions.hs | 2 +- .../Internal/Types/FileSystemWatcher.hs | 2 +- .../Protocol/Internal/Types/FoldingRange.hs | 2 +- .../Types/FoldingRangeClientCapabilities.hs | 2 +- .../Internal/Types/FoldingRangeOptions.hs | 2 +- .../Internal/Types/FoldingRangeParams.hs | 2 +- .../Types/FoldingRangeRegistrationOptions.hs | 2 +- .../Internal/Types/FormattingOptions.hs | 2 +- .../Types/FullDocumentDiagnosticReport.hs | 2 +- .../Types/GeneralClientCapabilities.hs | 2 +- .../LSP/Protocol/Internal/Types/Hover.hs | 2 +- .../Internal/Types/HoverClientCapabilities.hs | 2 +- .../Protocol/Internal/Types/HoverOptions.hs | 2 +- .../Protocol/Internal/Types/HoverParams.hs | 2 +- .../Types/HoverRegistrationOptions.hs | 2 +- .../Types/ImplementationClientCapabilities.hs | 2 +- .../Internal/Types/ImplementationOptions.hs | 2 +- .../Internal/Types/ImplementationParams.hs | 2 +- .../ImplementationRegistrationOptions.hs | 2 +- .../Internal/Types/InitializeParams.hs | 2 +- .../Internal/Types/InitializeResult.hs | 2 +- .../LSP/Protocol/Internal/Types/InlayHint.hs | 2 +- .../Types/InlayHintClientCapabilities.hs | 2 +- .../Internal/Types/InlayHintLabelPart.hs | 2 +- .../Internal/Types/InlayHintOptions.hs | 2 +- .../Internal/Types/InlayHintParams.hs | 2 +- .../Types/InlayHintRegistrationOptions.hs | 2 +- .../InlayHintWorkspaceClientCapabilities.hs | 2 +- .../Types/InlineValueClientCapabilities.hs | 2 +- .../Types/InlineValueEvaluatableExpression.hs | 2 +- .../Internal/Types/InlineValueOptions.hs | 2 +- .../Internal/Types/InlineValueParams.hs | 2 +- .../Types/InlineValueRegistrationOptions.hs | 2 +- .../Types/InlineValueVariableLookup.hs | 2 +- .../InlineValueWorkspaceClientCapabilities.hs | 2 +- .../LinkedEditingRangeClientCapabilities.hs | 2 +- .../Types/LinkedEditingRangeOptions.hs | 2 +- .../Types/LinkedEditingRangeParams.hs | 2 +- .../LinkedEditingRangeRegistrationOptions.hs | 2 +- .../Internal/Types/LinkedEditingRanges.hs | 2 +- .../Protocol/Internal/Types/LocationLink.hs | 2 +- .../Protocol/Internal/Types/LogTraceParams.hs | 2 +- .../Types/MarkdownClientCapabilities.hs | 2 +- .../LSP/Protocol/Internal/Types/Moniker.hs | 2 +- .../Types/MonikerClientCapabilities.hs | 2 +- .../Protocol/Internal/Types/MonikerOptions.hs | 2 +- .../Protocol/Internal/Types/MonikerParams.hs | 2 +- .../Types/MonikerRegistrationOptions.hs | 2 +- .../Protocol/Internal/Types/NotebookCell.hs | 2 +- .../Internal/Types/NotebookCellArrayChange.hs | 2 +- .../Types/NotebookCellTextDocumentFilter.hs | 2 +- .../Internal/Types/NotebookDocument.hs | 2 +- .../Types/NotebookDocumentChangeEvent.hs | 2 +- .../NotebookDocumentSyncClientCapabilities.hs | 2 +- .../Types/NotebookDocumentSyncOptions.hs | 2 +- ...NotebookDocumentSyncRegistrationOptions.hs | 2 +- .../Internal/Types/ParameterInformation.hs | 2 +- .../Internal/Types/PartialResultParams.hs | 2 +- .../Internal/Types/PrepareRenameParams.hs | 2 +- .../PublishDiagnosticsClientCapabilities.hs | 2 +- .../Types/PublishDiagnosticsParams.hs | 2 +- .../Types/ReferenceClientCapabilities.hs | 2 +- .../Internal/Types/ReferenceOptions.hs | 2 +- .../Internal/Types/ReferenceParams.hs | 2 +- .../Types/ReferenceRegistrationOptions.hs | 2 +- .../Protocol/Internal/Types/Registration.hs | 2 +- .../RegularExpressionsClientCapabilities.hs | 2 +- .../RelatedFullDocumentDiagnosticReport.hs | 2 +- ...elatedUnchangedDocumentDiagnosticReport.hs | 2 +- .../Types/RenameClientCapabilities.hs | 2 +- .../LSP/Protocol/Internal/Types/RenameFile.hs | 2 +- .../Internal/Types/RenameFileOptions.hs | 2 +- .../Protocol/Internal/Types/RenameOptions.hs | 2 +- .../Protocol/Internal/Types/RenameParams.hs | 2 +- .../Types/RenameRegistrationOptions.hs | 2 +- .../Internal/Types/ResourceOperation.hs | 2 +- .../Protocol/Internal/Types/SaveOptions.hs | 2 +- .../Protocol/Internal/Types/SelectionRange.hs | 2 +- .../Types/SelectionRangeClientCapabilities.hs | 2 +- .../Internal/Types/SelectionRangeOptions.hs | 2 +- .../Internal/Types/SelectionRangeParams.hs | 2 +- .../SelectionRangeRegistrationOptions.hs | 2 +- .../Protocol/Internal/Types/SemanticTokens.hs | 2 +- .../Types/SemanticTokensClientCapabilities.hs | 2 +- .../Internal/Types/SemanticTokensDelta.hs | 2 +- .../Types/SemanticTokensDeltaParams.hs | 2 +- .../Internal/Types/SemanticTokensEdit.hs | 2 +- .../Internal/Types/SemanticTokensOptions.hs | 2 +- .../Internal/Types/SemanticTokensParams.hs | 2 +- .../Types/SemanticTokensRangeParams.hs | 2 +- .../SemanticTokensRegistrationOptions.hs | 2 +- ...manticTokensWorkspaceClientCapabilities.hs | 2 +- .../Internal/Types/ServerCapabilities.hs | 2 +- .../Internal/Types/ShowDocumentParams.hs | 2 +- .../ShowMessageRequestClientCapabilities.hs | 2 +- .../Types/ShowMessageRequestParams.hs | 2 +- .../Protocol/Internal/Types/SignatureHelp.hs | 2 +- .../Types/SignatureHelpClientCapabilities.hs | 2 +- .../Internal/Types/SignatureHelpContext.hs | 2 +- .../Internal/Types/SignatureHelpOptions.hs | 2 +- .../Internal/Types/SignatureHelpParams.hs | 2 +- .../Types/SignatureHelpRegistrationOptions.hs | 2 +- .../Internal/Types/SignatureInformation.hs | 2 +- .../Types/StaticRegistrationOptions.hs | 2 +- .../Internal/Types/SymbolInformation.hs | 2 +- .../Types/TextDocumentClientCapabilities.hs | 2 +- .../TextDocumentSaveRegistrationOptions.hs | 2 +- .../TextDocumentSyncClientCapabilities.hs | 2 +- .../Internal/Types/TextDocumentSyncOptions.hs | 2 +- .../Types/TypeDefinitionClientCapabilities.hs | 2 +- .../Internal/Types/TypeDefinitionOptions.hs | 2 +- .../Internal/Types/TypeDefinitionParams.hs | 2 +- .../TypeDefinitionRegistrationOptions.hs | 2 +- .../Types/TypeHierarchyClientCapabilities.hs | 2 +- .../Internal/Types/TypeHierarchyItem.hs | 2 +- .../Internal/Types/TypeHierarchyOptions.hs | 2 +- .../Types/TypeHierarchyPrepareParams.hs | 2 +- .../Types/TypeHierarchyRegistrationOptions.hs | 2 +- .../Types/TypeHierarchySubtypesParams.hs | 2 +- .../Types/TypeHierarchySupertypesParams.hs | 2 +- .../Internal/Types/UInitializeParams.hs | 2 +- .../Types/WindowClientCapabilities.hs | 2 +- .../Internal/Types/WorkDoneProgressBegin.hs | 2 +- .../Internal/Types/WorkDoneProgressEnd.hs | 2 +- .../Internal/Types/WorkDoneProgressOptions.hs | 2 +- .../Internal/Types/WorkDoneProgressParams.hs | 2 +- .../Internal/Types/WorkDoneProgressReport.hs | 2 +- .../Types/WorkspaceClientCapabilities.hs | 2 +- .../Types/WorkspaceDiagnosticParams.hs | 2 +- .../Protocol/Internal/Types/WorkspaceEdit.hs | 2 +- .../Types/WorkspaceEditClientCapabilities.hs | 2 +- .../Types/WorkspaceFoldersInitializeParams.hs | 2 +- .../WorkspaceFoldersServerCapabilities.hs | 2 +- .../WorkspaceFullDocumentDiagnosticReport.hs | 2 +- .../Internal/Types/WorkspaceSymbol.hs | 2 +- .../WorkspaceSymbolClientCapabilities.hs | 2 +- .../Internal/Types/WorkspaceSymbolOptions.hs | 2 +- .../Internal/Types/WorkspaceSymbolParams.hs | 2 +- .../WorkspaceSymbolRegistrationOptions.hs | 2 +- lsp-types/generator/CodeGen.hs | 30 +++++- lsp-types/src/Data/Row/Aeson.hs | 6 +- .../Language/LSP/Protocol/Message/Types.hs | 9 +- .../src/Language/LSP/Protocol/Types/Common.hs | 30 ++++++ lsp-types/test/JsonSpec.hs | 92 +++++++++++-------- 244 files changed, 359 insertions(+), 284 deletions(-) create mode 100644 lsp-types/.gitattributes diff --git a/.gitattributes b/.gitattributes index bfadaf423..464bc47a2 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1 @@ -lsp-types/generated linguist-generated=true +lsp-types/generated/** linguist-generated=true diff --git a/lsp-types/.gitattributes b/lsp-types/.gitattributes new file mode 100644 index 000000000..464bc47a2 --- /dev/null +++ b/lsp-types/.gitattributes @@ -0,0 +1 @@ +lsp-types/generated/** linguist-generated=true diff --git a/lsp-types/ChangeLog.md b/lsp-types/ChangeLog.md index 053ac53ca..01b4d547a 100644 --- a/lsp-types/ChangeLog.md +++ b/lsp-types/ChangeLog.md @@ -3,6 +3,7 @@ ## Unreleased - Require aeson 2 +- Accept `null` in place of a missing field, a common mistake in spec compliance. ## 2.1.0.0 -- 2023-11-13 diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditParams.hs index f755ed0a6..a697cead0 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditParams.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON ApplyWorkspaceEditParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditResult.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditResult.hs index 7c4caf440..a580ff5b4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditResult.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ApplyWorkspaceEditResult.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON ApplyWorkspaceEditResult where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/BaseSymbolInformation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/BaseSymbolInformation.hs index d1ce10c29..585e937dc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/BaseSymbolInformation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/BaseSymbolInformation.hs @@ -57,4 +57,4 @@ instance Aeson.ToJSON BaseSymbolInformation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyClientCapabilities.hs index 8852b4102..6360fa9de 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyClientCapabilities.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON CallHierarchyClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyIncomingCallsParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyIncomingCallsParams.hs index 34136eb2f..a859f1485 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyIncomingCallsParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyIncomingCallsParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON CallHierarchyIncomingCallsParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyItem.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyItem.hs index 04a21221e..cf9f89d75 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyItem.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyItem.hs @@ -80,4 +80,4 @@ instance Aeson.ToJSON CallHierarchyItem where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOptions.hs index 27823124d..89449c80b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOptions.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON CallHierarchyOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOutgoingCallsParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOutgoingCallsParams.hs index 8bfa7242d..82fed20c8 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOutgoingCallsParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyOutgoingCallsParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON CallHierarchyOutgoingCallsParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyPrepareParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyPrepareParams.hs index 5ca5e47b5..fb4a09d37 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyPrepareParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyPrepareParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON CallHierarchyPrepareParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyRegistrationOptions.hs index f87782843..fe8107098 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CallHierarchyRegistrationOptions.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON CallHierarchyRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ChangeAnnotation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ChangeAnnotation.hs index 2379045e9..19a646ddb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ChangeAnnotation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ChangeAnnotation.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON ChangeAnnotation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ClientCapabilities.hs index 0641bba64..c02bf5b3e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ClientCapabilities.hs @@ -69,4 +69,4 @@ instance Aeson.ToJSON ClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeAction.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeAction.hs index 948aabc1c..de377d26f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeAction.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeAction.hs @@ -106,4 +106,4 @@ instance Aeson.ToJSON CodeAction where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionClientCapabilities.hs index 09ef435ea..eca200678 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionClientCapabilities.hs @@ -88,4 +88,4 @@ instance Aeson.ToJSON CodeActionClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionContext.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionContext.hs index 0f9ef2a2f..52afab400 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionContext.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionContext.hs @@ -57,4 +57,4 @@ instance Aeson.ToJSON CodeActionContext where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionOptions.hs index 902789a8d..18e225f4b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionOptions.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON CodeActionOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionParams.hs index 34ed1851c..d5332a255 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionParams.hs @@ -59,4 +59,4 @@ instance Aeson.ToJSON CodeActionParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionRegistrationOptions.hs index 54028f1b6..258574d82 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeActionRegistrationOptions.hs @@ -58,4 +58,4 @@ instance Aeson.ToJSON CodeActionRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLens.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLens.hs index 07f19d976..21003342b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLens.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLens.hs @@ -52,4 +52,4 @@ instance Aeson.ToJSON CodeLens where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensClientCapabilities.hs index a2e4143da..9dcb01a69 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON CodeLensClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensOptions.hs index 0713cdf30..f494bdc36 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensOptions.hs @@ -39,4 +39,4 @@ instance Aeson.ToJSON CodeLensOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensParams.hs index 6d6d4f549..66776f2cd 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON CodeLensParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensRegistrationOptions.hs index 88cc822ff..e2f79764b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensRegistrationOptions.hs @@ -46,4 +46,4 @@ instance Aeson.ToJSON CodeLensRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensWorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensWorkspaceClientCapabilities.hs index fdd9fd280..5c56421b4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensWorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CodeLensWorkspaceClientCapabilities.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON CodeLensWorkspaceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentation.hs index 2a77ead23..42fcfc16e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentation.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON ColorPresentation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentationParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentationParams.hs index 0ba7b0698..b87f5990a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentationParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ColorPresentationParams.hs @@ -59,4 +59,4 @@ instance Aeson.ToJSON ColorPresentationParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Command.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Command.hs index 4f194de66..8a0e348d5 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Command.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Command.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON Command where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionClientCapabilities.hs index 90c630e1b..d2b3ccee9 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionClientCapabilities.hs @@ -74,4 +74,4 @@ instance Aeson.ToJSON CompletionClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionContext.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionContext.hs index 5382055c5..5f41aaf80 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionContext.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionContext.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON CompletionContext where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItem.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItem.hs index 970f6e513..6e1481e10 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItem.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItem.hs @@ -215,4 +215,4 @@ instance Aeson.ToJSON CompletionItem where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItemLabelDetails.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItemLabelDetails.hs index f3001a426..b2bc9e0e5 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItemLabelDetails.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionItemLabelDetails.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON CompletionItemLabelDetails where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionList.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionList.hs index d10af5aaf..7f36901d4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionList.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionList.hs @@ -67,4 +67,4 @@ instance Aeson.ToJSON CompletionList where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionOptions.hs index be8a4ddb1..c85f92e73 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionOptions.hs @@ -74,4 +74,4 @@ instance Aeson.ToJSON CompletionOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionParams.hs index 8e7f42d3f..d2a614eba 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionParams.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON CompletionParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionRegistrationOptions.hs index 4f3b34738..bfc313e58 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CompletionRegistrationOptions.hs @@ -81,4 +81,4 @@ instance Aeson.ToJSON CompletionRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ConfigurationItem.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ConfigurationItem.hs index 109eaad6e..5dc4b1a10 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ConfigurationItem.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ConfigurationItem.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON ConfigurationItem where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFile.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFile.hs index 6f59b918a..451f7edee 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFile.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFile.hs @@ -55,4 +55,4 @@ instance Aeson.ToJSON CreateFile where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFileOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFileOptions.hs index 37fdce0b3..d1aa5b562 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFileOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/CreateFileOptions.hs @@ -39,4 +39,4 @@ instance Aeson.ToJSON CreateFileOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationClientCapabilities.hs index 66d0f2664..c73221267 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationClientCapabilities.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DeclarationClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationOptions.hs index 33191ff47..84ea366e4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DeclarationOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationParams.hs index a8e60d957..60d015e1c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON DeclarationParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationRegistrationOptions.hs index d7da7fb06..e5b1c0b82 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeclarationRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON DeclarationRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionClientCapabilities.hs index 1488fafee..bed65fe0e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionClientCapabilities.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DefinitionClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionOptions.hs index 05ceea06b..d373c8824 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DefinitionOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionParams.hs index 23b88676a..2f1c51434 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON DefinitionParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionRegistrationOptions.hs index 7fbed57db..16c665f3c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DefinitionRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DefinitionRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFile.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFile.hs index 82815bfe2..b9d989f3a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFile.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFile.hs @@ -55,4 +55,4 @@ instance Aeson.ToJSON DeleteFile where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFileOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFileOptions.hs index d25f8465b..3c98601a6 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFileOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DeleteFileOptions.hs @@ -39,4 +39,4 @@ instance Aeson.ToJSON DeleteFileOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Diagnostic.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Diagnostic.hs index 55867eda8..abf14693e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Diagnostic.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Diagnostic.hs @@ -94,4 +94,4 @@ instance Aeson.ToJSON Diagnostic where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticClientCapabilities.hs index 9bed0c997..701243898 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticClientCapabilities.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON DiagnosticClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticOptions.hs index 469f258f5..d09c42e4a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticOptions.hs @@ -56,4 +56,4 @@ instance Aeson.ToJSON DiagnosticOptions where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticRegistrationOptions.hs index 25a26aed5..5afb05460 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticRegistrationOptions.hs @@ -69,4 +69,4 @@ instance Aeson.ToJSON DiagnosticRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticWorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticWorkspaceClientCapabilities.hs index 0a6ce1308..347c76c74 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticWorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DiagnosticWorkspaceClientCapabilities.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON DiagnosticWorkspaceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationClientCapabilities.hs index ec5414c46..3c48d33de 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DidChangeConfigurationClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationRegistrationOptions.hs index a4abf7827..b45864634 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeConfigurationRegistrationOptions.hs @@ -35,4 +35,4 @@ instance Aeson.ToJSON DidChangeConfigurationRegistrationOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeWatchedFilesClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeWatchedFilesClientCapabilities.hs index 3a7e616dd..16929eb21 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeWatchedFilesClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidChangeWatchedFilesClientCapabilities.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON DidChangeWatchedFilesClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidSaveTextDocumentParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidSaveTextDocumentParams.hs index a32d1503b..744418bf5 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidSaveTextDocumentParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DidSaveTextDocumentParams.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON DidSaveTextDocumentParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorClientCapabilities.hs index 781eb1e7e..bca2c1fce 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorClientCapabilities.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON DocumentColorClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorOptions.hs index 031b0b83f..f800cf549 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentColorOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorParams.hs index 6f4568b9e..7e718f82e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON DocumentColorParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorRegistrationOptions.hs index 85c339779..89c6d7a1c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentColorRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON DocumentColorRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticParams.hs index d581e0596..72951d2c8 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentDiagnosticParams.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON DocumentDiagnosticParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingClientCapabilities.hs index 7e6ba2eaa..244db7381 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentFormattingClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingOptions.hs index 5bb7931ef..48958a07a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentFormattingOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingParams.hs index ade32293e..a66af384f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON DocumentFormattingParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingRegistrationOptions.hs index c9abf704c..b9d03a931 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentFormattingRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DocumentFormattingRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlight.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlight.hs index 4fbbd3230..1b30cc76f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlight.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlight.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON DocumentHighlight where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightClientCapabilities.hs index 3239562e8..c9d71e510 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentHighlightClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightOptions.hs index 50048d51b..cab9e74dc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentHighlightOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightParams.hs index 1d9b4ad48..ea1bf3286 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON DocumentHighlightParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightRegistrationOptions.hs index e419428d0..15fc547eb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentHighlightRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DocumentHighlightRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLink.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLink.hs index 86b899270..3e81ebd21 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLink.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLink.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON DocumentLink where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkClientCapabilities.hs index 6ab51952a..c0c7e62c5 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkClientCapabilities.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DocumentLinkClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkOptions.hs index e8059342b..29958d007 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkOptions.hs @@ -39,4 +39,4 @@ instance Aeson.ToJSON DocumentLinkOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkParams.hs index 2d448a6c0..1342433ee 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON DocumentLinkParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkRegistrationOptions.hs index f1c2304f3..2dceceec3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentLinkRegistrationOptions.hs @@ -46,4 +46,4 @@ instance Aeson.ToJSON DocumentLinkRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingClientCapabilities.hs index 6714f815d..bc71ee0db 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentOnTypeFormattingClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingOptions.hs index bc8a63fac..510aef894 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingOptions.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON DocumentOnTypeFormattingOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingRegistrationOptions.hs index d311f7a85..14fccfa84 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentOnTypeFormattingRegistrationOptions.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON DocumentOnTypeFormattingRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingClientCapabilities.hs index 19f725374..6e8b1adae 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentRangeFormattingClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingOptions.hs index de68a5097..2e845306a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON DocumentRangeFormattingOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingParams.hs index 5343116f9..78c362250 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON DocumentRangeFormattingParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingRegistrationOptions.hs index 1c33397b0..66361c9e3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentRangeFormattingRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON DocumentRangeFormattingRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbol.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbol.hs index c15403229..63d78ba91 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbol.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbol.hs @@ -84,4 +84,4 @@ instance Aeson.ToJSON DocumentSymbol where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolClientCapabilities.hs index b38e6a261..6f346326f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolClientCapabilities.hs @@ -65,4 +65,4 @@ instance Aeson.ToJSON DocumentSymbolClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolOptions.hs index c96315179..63bd71780 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolOptions.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON DocumentSymbolOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolParams.hs index ac9710a7e..7510b8b6a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON DocumentSymbolParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolRegistrationOptions.hs index 055acaf3a..941c8ccb1 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/DocumentSymbolRegistrationOptions.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON DocumentSymbolRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandClientCapabilities.hs index 071997e0a..d4186c5b0 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON ExecuteCommandClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandOptions.hs index 8067acc0c..b86c92e4b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandOptions.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON ExecuteCommandOptions where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandParams.hs index c8db86f96..6618cbc49 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON ExecuteCommandParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandRegistrationOptions.hs index f35278393..06483c404 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecuteCommandRegistrationOptions.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON ExecuteCommandRegistrationOptions where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecutionSummary.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecutionSummary.hs index cc82925e8..4959c9e44 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecutionSummary.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ExecutionSummary.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON ExecutionSummary where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationClientCapabilities.hs index 6bb78042a..c9f979da6 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationClientCapabilities.hs @@ -69,4 +69,4 @@ instance Aeson.ToJSON FileOperationClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationFilter.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationFilter.hs index d545fd42d..13ea2e94a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationFilter.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationFilter.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON FileOperationFilter where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationOptions.hs index 3a3dacb9f..b26be0074 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationOptions.hs @@ -62,4 +62,4 @@ instance Aeson.ToJSON FileOperationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPattern.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPattern.hs index f8aae3330..a172ae307 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPattern.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPattern.hs @@ -58,4 +58,4 @@ instance Aeson.ToJSON FileOperationPattern where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternOptions.hs index c7191e5ee..13183cd41 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileOperationPatternOptions.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON FileOperationPatternOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileSystemWatcher.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileSystemWatcher.hs index c87ce5f1a..f9d563080 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileSystemWatcher.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FileSystemWatcher.hs @@ -45,4 +45,4 @@ instance Aeson.ToJSON FileSystemWatcher where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRange.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRange.hs index cdcdfcb98..7b759082b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRange.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRange.hs @@ -70,4 +70,4 @@ instance Aeson.ToJSON FoldingRange where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeClientCapabilities.hs index 33d49b223..ce72171b4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeClientCapabilities.hs @@ -67,4 +67,4 @@ instance Aeson.ToJSON FoldingRangeClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeOptions.hs index f37241d8b..dafdcb2e6 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON FoldingRangeOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeParams.hs index 30f7d7d7e..98f26009c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON FoldingRangeParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeRegistrationOptions.hs index 9408df69e..1a8f6758e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FoldingRangeRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON FoldingRangeRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FormattingOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FormattingOptions.hs index 558af2627..1220bb9bf 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FormattingOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FormattingOptions.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON FormattingOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FullDocumentDiagnosticReport.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FullDocumentDiagnosticReport.hs index 893bb153f..312b50e81 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FullDocumentDiagnosticReport.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/FullDocumentDiagnosticReport.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON FullDocumentDiagnosticReport where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/GeneralClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/GeneralClientCapabilities.hs index 5d94eaf85..b3d6a5631 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/GeneralClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/GeneralClientCapabilities.hs @@ -82,4 +82,4 @@ instance Aeson.ToJSON GeneralClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Hover.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Hover.hs index 32c3fb860..aa17db3d9 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Hover.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Hover.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON Hover where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverClientCapabilities.hs index 780a98234..70028053d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverClientCapabilities.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON HoverClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverOptions.hs index c6f866ba8..c4313484b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON HoverOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverParams.hs index c1c8566a3..f7cf4f6bf 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON HoverParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverRegistrationOptions.hs index d51be5ceb..39c37ee7e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/HoverRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON HoverRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationClientCapabilities.hs index c3b668764..da434a520 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationClientCapabilities.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON ImplementationClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationOptions.hs index ac31c0d4c..287b8b1ac 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON ImplementationOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationParams.hs index 667776e7e..d8f8097d3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON ImplementationParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationRegistrationOptions.hs index d15fda895..60358637a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ImplementationRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON ImplementationRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeParams.hs index bb6761107..79edd4435 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeParams.hs @@ -113,4 +113,4 @@ instance Aeson.ToJSON InitializeParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeResult.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeResult.hs index bed977f54..085851638 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeResult.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InitializeResult.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON InitializeResult where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHint.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHint.hs index 6703151b9..e1b56d32f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHint.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHint.hs @@ -95,4 +95,4 @@ instance Aeson.ToJSON InlayHint where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintClientCapabilities.hs index e0f9936dd..75f87037d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintClientCapabilities.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON InlayHintClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintLabelPart.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintLabelPart.hs index d6b2e39c1..f6550f5f4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintLabelPart.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintLabelPart.hs @@ -71,4 +71,4 @@ instance Aeson.ToJSON InlayHintLabelPart where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintOptions.hs index f9778ad99..60b233661 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintOptions.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON InlayHintOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintParams.hs index bb271754a..7dcaab001 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON InlayHintParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintRegistrationOptions.hs index e83a38342..7b2e8d7c7 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintRegistrationOptions.hs @@ -56,4 +56,4 @@ instance Aeson.ToJSON InlayHintRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintWorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintWorkspaceClientCapabilities.hs index df38d541a..ad50026f3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintWorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlayHintWorkspaceClientCapabilities.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON InlayHintWorkspaceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueClientCapabilities.hs index 9f1a1de7f..85155a645 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueClientCapabilities.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON InlineValueClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueEvaluatableExpression.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueEvaluatableExpression.hs index 5e8c118e9..640156428 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueEvaluatableExpression.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueEvaluatableExpression.hs @@ -46,4 +46,4 @@ instance Aeson.ToJSON InlineValueEvaluatableExpression where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueOptions.hs index c776ac1a7..8f860e53a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueOptions.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON InlineValueOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueParams.hs index 2e6aea6bc..366619a3e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueParams.hs @@ -56,4 +56,4 @@ instance Aeson.ToJSON InlineValueParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueRegistrationOptions.hs index b6c640da4..ac062b231 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueRegistrationOptions.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON InlineValueRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueVariableLookup.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueVariableLookup.hs index 309aacff2..96a156639 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueVariableLookup.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueVariableLookup.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON InlineValueVariableLookup where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueWorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueWorkspaceClientCapabilities.hs index 2984f46ce..581562afb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueWorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/InlineValueWorkspaceClientCapabilities.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON InlineValueWorkspaceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeClientCapabilities.hs index 904df1b14..a12bcf11c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeClientCapabilities.hs @@ -38,4 +38,4 @@ instance Aeson.ToJSON LinkedEditingRangeClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeOptions.hs index dcafc749f..3a706cac1 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON LinkedEditingRangeOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeParams.hs index 3fb913179..a0dc9bc74 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON LinkedEditingRangeParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeRegistrationOptions.hs index 400f4d288..3ef1357ca 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRangeRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON LinkedEditingRangeRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRanges.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRanges.hs index eadc159ab..6976d212d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRanges.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LinkedEditingRanges.hs @@ -46,4 +46,4 @@ instance Aeson.ToJSON LinkedEditingRanges where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LocationLink.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LocationLink.hs index ec5089ab4..ede95d664 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LocationLink.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LocationLink.hs @@ -58,4 +58,4 @@ instance Aeson.ToJSON LocationLink where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LogTraceParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LogTraceParams.hs index c40de758b..0f5346c03 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LogTraceParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/LogTraceParams.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON LogTraceParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MarkdownClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MarkdownClientCapabilities.hs index 9834d0a4b..e5a75691e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MarkdownClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MarkdownClientCapabilities.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON MarkdownClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Moniker.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Moniker.hs index 9407f5885..70ffa4a42 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Moniker.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Moniker.hs @@ -55,4 +55,4 @@ instance Aeson.ToJSON Moniker where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerClientCapabilities.hs index 6219612b6..2d0cd88f4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerClientCapabilities.hs @@ -38,4 +38,4 @@ instance Aeson.ToJSON MonikerClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerOptions.hs index 97a86ec97..fc9c3d74c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON MonikerOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerParams.hs index 0e40bcb27..ffd168eec 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON MonikerParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerRegistrationOptions.hs index 3c3e77b3d..a4c487210 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/MonikerRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON MonikerRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCell.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCell.hs index cc9eac23c..1015f2044 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCell.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCell.hs @@ -63,4 +63,4 @@ instance Aeson.ToJSON NotebookCell where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellArrayChange.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellArrayChange.hs index 5ff83ec31..edd091338 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellArrayChange.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellArrayChange.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON NotebookCellArrayChange where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellTextDocumentFilter.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellTextDocumentFilter.hs index af4712a11..1db3be258 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellTextDocumentFilter.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookCellTextDocumentFilter.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON NotebookCellTextDocumentFilter where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocument.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocument.hs index a9ddc3799..593d6bf2f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocument.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocument.hs @@ -64,4 +64,4 @@ instance Aeson.ToJSON NotebookDocument where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentChangeEvent.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentChangeEvent.hs index b842df5ac..94e8e92cc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentChangeEvent.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentChangeEvent.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON NotebookDocumentChangeEvent where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncClientCapabilities.hs index 938a96ad0..623a92c4d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncClientCapabilities.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON NotebookDocumentSyncClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncOptions.hs index fed1f2668..2ca4a28eb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncOptions.hs @@ -55,4 +55,4 @@ instance Aeson.ToJSON NotebookDocumentSyncOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncRegistrationOptions.hs index 2612adbce..ffa869a2f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/NotebookDocumentSyncRegistrationOptions.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON NotebookDocumentSyncRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ParameterInformation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ParameterInformation.hs index 5ffbf82bc..3f573dc9c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ParameterInformation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ParameterInformation.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON ParameterInformation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PartialResultParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PartialResultParams.hs index 688b34cc5..8d7d1b576 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PartialResultParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PartialResultParams.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON PartialResultParams where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PrepareRenameParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PrepareRenameParams.hs index f156841dc..b7162acfd 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PrepareRenameParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PrepareRenameParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON PrepareRenameParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsClientCapabilities.hs index 457618712..21768157d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsClientCapabilities.hs @@ -68,4 +68,4 @@ instance Aeson.ToJSON PublishDiagnosticsClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsParams.hs index 77ce47737..ff5df5133 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/PublishDiagnosticsParams.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON PublishDiagnosticsParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceClientCapabilities.hs index 7b3e107e8..55c896a04 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceClientCapabilities.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON ReferenceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceOptions.hs index 7796f06fd..8f544ed29 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON ReferenceOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceParams.hs index fd08c0762..0d160ae38 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceParams.hs @@ -59,4 +59,4 @@ instance Aeson.ToJSON ReferenceParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceRegistrationOptions.hs index 8fd2236b8..c5b52f58b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ReferenceRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON ReferenceRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Registration.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Registration.hs index b5c2a54e0..80d41fa89 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Registration.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/Registration.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON Registration where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RegularExpressionsClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RegularExpressionsClientCapabilities.hs index ee8d4909f..6eff7c2ec 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RegularExpressionsClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RegularExpressionsClientCapabilities.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON RegularExpressionsClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedFullDocumentDiagnosticReport.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedFullDocumentDiagnosticReport.hs index 223aad73b..e7ac0dd81 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedFullDocumentDiagnosticReport.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedFullDocumentDiagnosticReport.hs @@ -66,4 +66,4 @@ instance Aeson.ToJSON RelatedFullDocumentDiagnosticReport where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedUnchangedDocumentDiagnosticReport.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedUnchangedDocumentDiagnosticReport.hs index 314d1b259..97417d9e7 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedUnchangedDocumentDiagnosticReport.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RelatedUnchangedDocumentDiagnosticReport.hs @@ -62,4 +62,4 @@ instance Aeson.ToJSON RelatedUnchangedDocumentDiagnosticReport where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameClientCapabilities.hs index 99e5fc58f..f3cc32c03 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameClientCapabilities.hs @@ -64,4 +64,4 @@ instance Aeson.ToJSON RenameClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFile.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFile.hs index 671106149..c09256b4c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFile.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFile.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON RenameFile where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFileOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFileOptions.hs index edd849b37..8ee514468 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFileOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameFileOptions.hs @@ -39,4 +39,4 @@ instance Aeson.ToJSON RenameFileOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameOptions.hs index 87d3cdbb6..d3ee4b590 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON RenameOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameParams.hs index 3e8c4c65b..de1d4151b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameParams.hs @@ -55,4 +55,4 @@ instance Aeson.ToJSON RenameParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameRegistrationOptions.hs index 354b8070f..98dce8990 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/RenameRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON RenameRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ResourceOperation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ResourceOperation.hs index d7821b4a9..b65aceed9 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ResourceOperation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ResourceOperation.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON ResourceOperation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SaveOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SaveOptions.hs index 945130f52..f3ff75f0d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SaveOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SaveOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON SaveOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRange.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRange.hs index bcda9b3ee..4cb349f8e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRange.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRange.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON SelectionRange where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeClientCapabilities.hs index 4b894ed8f..ed99760dd 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeClientCapabilities.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON SelectionRangeClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeOptions.hs index c715ee3a5..bf4f8b948 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON SelectionRangeOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeParams.hs index 8c1e8eb4a..249280cfb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON SelectionRangeParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeRegistrationOptions.hs index b6d675bc8..054b8b1c3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SelectionRangeRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON SelectionRangeRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokens.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokens.hs index b082f9340..f80dd3c46 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokens.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokens.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON SemanticTokens where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensClientCapabilities.hs index 69b029cd2..8cbbcfa37 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensClientCapabilities.hs @@ -100,4 +100,4 @@ instance Aeson.ToJSON SemanticTokensClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDelta.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDelta.hs index 62dcec38f..e4d53a217 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDelta.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDelta.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON SemanticTokensDelta where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDeltaParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDeltaParams.hs index 37a556ea4..a91579bef 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDeltaParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensDeltaParams.hs @@ -54,4 +54,4 @@ instance Aeson.ToJSON SemanticTokensDeltaParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensEdit.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensEdit.hs index 475855309..84922e55e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensEdit.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensEdit.hs @@ -44,4 +44,4 @@ instance Aeson.ToJSON SemanticTokensEdit where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensOptions.hs index 9dda697a9..267e35ce3 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensOptions.hs @@ -52,4 +52,4 @@ instance Aeson.ToJSON SemanticTokensOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensParams.hs index c6b1acae2..9676da5ee 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON SemanticTokensParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRangeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRangeParams.hs index 913d9caf8..42a644139 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRangeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRangeParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON SemanticTokensRangeParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRegistrationOptions.hs index 6fcfa463c..32564ab01 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensRegistrationOptions.hs @@ -66,4 +66,4 @@ instance Aeson.ToJSON SemanticTokensRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensWorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensWorkspaceClientCapabilities.hs index 804e4ebf1..a1e2d9107 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensWorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SemanticTokensWorkspaceClientCapabilities.hs @@ -40,4 +40,4 @@ instance Aeson.ToJSON SemanticTokensWorkspaceClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ServerCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ServerCapabilities.hs index 86af4580d..da8c3b14b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ServerCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ServerCapabilities.hs @@ -290,4 +290,4 @@ instance Aeson.ToJSON ServerCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowDocumentParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowDocumentParams.hs index c74fc1bfb..cbe5b66e6 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowDocumentParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowDocumentParams.hs @@ -61,4 +61,4 @@ instance Aeson.ToJSON ShowDocumentParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestClientCapabilities.hs index 7449afcdd..5dfc2a23a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestClientCapabilities.hs @@ -35,4 +35,4 @@ instance Aeson.ToJSON ShowMessageRequestClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestParams.hs index 268bc2cbf..5ca64ab2c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/ShowMessageRequestParams.hs @@ -47,4 +47,4 @@ instance Aeson.ToJSON ShowMessageRequestParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelp.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelp.hs index 80e420b12..330fe4d70 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelp.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelp.hs @@ -61,4 +61,4 @@ instance Aeson.ToJSON SignatureHelp where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpClientCapabilities.hs index 37f91f2c1..8ccb63fda 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpClientCapabilities.hs @@ -52,4 +52,4 @@ instance Aeson.ToJSON SignatureHelpClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpContext.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpContext.hs index e427999c5..543f742a8 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpContext.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpContext.hs @@ -62,4 +62,4 @@ instance Aeson.ToJSON SignatureHelpContext where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpOptions.hs index c936b16a9..6ab24d94a 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpOptions.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON SignatureHelpOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpParams.hs index 1980d1735..6417c6fe4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpParams.hs @@ -56,4 +56,4 @@ instance Aeson.ToJSON SignatureHelpParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpRegistrationOptions.hs index 3968e4fc7..4e3d279e4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureHelpRegistrationOptions.hs @@ -57,4 +57,4 @@ instance Aeson.ToJSON SignatureHelpRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureInformation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureInformation.hs index 922747fbb..3f3722809 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureInformation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SignatureInformation.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON SignatureInformation where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/StaticRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/StaticRegistrationOptions.hs index 83c142c05..385b4df73 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/StaticRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/StaticRegistrationOptions.hs @@ -37,4 +37,4 @@ instance Aeson.ToJSON StaticRegistrationOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SymbolInformation.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SymbolInformation.hs index 4cad1ab13..cee77a4e4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SymbolInformation.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/SymbolInformation.hs @@ -79,4 +79,4 @@ instance Aeson.ToJSON SymbolInformation where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentClientCapabilities.hs index c2587d900..0effbbf13 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentClientCapabilities.hs @@ -238,4 +238,4 @@ instance Aeson.ToJSON TextDocumentClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveRegistrationOptions.hs index 38ce7f82a..08e547294 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSaveRegistrationOptions.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON TextDocumentSaveRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncClientCapabilities.hs index 6581d9ca1..f982b2eae 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncClientCapabilities.hs @@ -51,4 +51,4 @@ instance Aeson.ToJSON TextDocumentSyncClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncOptions.hs index 53c1f4f54..450c3f09e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TextDocumentSyncOptions.hs @@ -61,4 +61,4 @@ instance Aeson.ToJSON TextDocumentSyncOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionClientCapabilities.hs index ce302858c..4af79a02d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionClientCapabilities.hs @@ -43,4 +43,4 @@ instance Aeson.ToJSON TypeDefinitionClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionOptions.hs index d51b2110e..fe06dcdda 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON TypeDefinitionOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionParams.hs index d26944423..667cc8c5f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionParams.hs @@ -53,4 +53,4 @@ instance Aeson.ToJSON TypeDefinitionParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionRegistrationOptions.hs index e648f62d1..7c4d11533 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeDefinitionRegistrationOptions.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON TypeDefinitionRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyClientCapabilities.hs index af834fa5d..7c62a1570 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyClientCapabilities.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON TypeHierarchyClientCapabilities where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyItem.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyItem.hs index 3b0d57c51..f007f6933 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyItem.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyItem.hs @@ -81,4 +81,4 @@ instance Aeson.ToJSON TypeHierarchyItem where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyOptions.hs index 3ebf664ba..312a481b0 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyOptions.hs @@ -36,4 +36,4 @@ instance Aeson.ToJSON TypeHierarchyOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyPrepareParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyPrepareParams.hs index ae027e387..a67c1d775 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyPrepareParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyPrepareParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON TypeHierarchyPrepareParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyRegistrationOptions.hs index c894a0a15..a689a465d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchyRegistrationOptions.hs @@ -50,4 +50,4 @@ instance Aeson.ToJSON TypeHierarchyRegistrationOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySubtypesParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySubtypesParams.hs index ea3bb8069..7d2136f01 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySubtypesParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySubtypesParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON TypeHierarchySubtypesParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySupertypesParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySupertypesParams.hs index 12e941005..1b01261af 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySupertypesParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/TypeHierarchySupertypesParams.hs @@ -49,4 +49,4 @@ instance Aeson.ToJSON TypeHierarchySupertypesParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/UInitializeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/UInitializeParams.hs index 63d408c21..0672f5fa6 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/UInitializeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/UInitializeParams.hs @@ -101,4 +101,4 @@ instance Aeson.ToJSON UInitializeParams where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WindowClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WindowClientCapabilities.hs index cd816c376..80ce8987c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WindowClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WindowClientCapabilities.hs @@ -58,4 +58,4 @@ instance Aeson.ToJSON WindowClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressBegin.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressBegin.hs index 1b260eebf..f20e93622 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressBegin.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressBegin.hs @@ -70,4 +70,4 @@ instance Aeson.ToJSON WorkDoneProgressBegin where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressEnd.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressEnd.hs index 95710b91e..4a0e8048e 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressEnd.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressEnd.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON WorkDoneProgressEnd where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressOptions.hs index df62abf81..4f07dac0f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressOptions.hs @@ -34,4 +34,4 @@ instance Aeson.ToJSON WorkDoneProgressOptions where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressParams.hs index 54029e113..e940cb74d 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressParams.hs @@ -35,4 +35,4 @@ instance Aeson.ToJSON WorkDoneProgressParams where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressReport.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressReport.hs index 91eb19a24..fae32854b 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressReport.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkDoneProgressReport.hs @@ -63,4 +63,4 @@ instance Aeson.ToJSON WorkDoneProgressReport where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceClientCapabilities.hs index 6ab559969..9cb0732fc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceClientCapabilities.hs @@ -133,4 +133,4 @@ instance Aeson.ToJSON WorkspaceClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceDiagnosticParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceDiagnosticParams.hs index 5a1a3499d..1ff442bfb 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceDiagnosticParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceDiagnosticParams.hs @@ -56,4 +56,4 @@ instance Aeson.ToJSON WorkspaceDiagnosticParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEdit.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEdit.hs index 3b8c6a2ba..1ce55953c 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEdit.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEdit.hs @@ -78,4 +78,4 @@ instance Aeson.ToJSON WorkspaceEdit where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEditClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEditClientCapabilities.hs index cf2f2ac26..6d8d197b4 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEditClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceEditClientCapabilities.hs @@ -72,4 +72,4 @@ instance Aeson.ToJSON WorkspaceEditClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersInitializeParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersInitializeParams.hs index bbb025146..3a88a8b78 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersInitializeParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersInitializeParams.hs @@ -41,4 +41,4 @@ instance Aeson.ToJSON WorkspaceFoldersInitializeParams where 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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersServerCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersServerCapabilities.hs index 0d6a5a328..20272e8a5 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersServerCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFoldersServerCapabilities.hs @@ -46,4 +46,4 @@ instance Aeson.ToJSON WorkspaceFoldersServerCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFullDocumentDiagnosticReport.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFullDocumentDiagnosticReport.hs index 6a77f00fc..206b15479 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFullDocumentDiagnosticReport.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceFullDocumentDiagnosticReport.hs @@ -63,4 +63,4 @@ instance Aeson.ToJSON WorkspaceFullDocumentDiagnosticReport where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbol.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbol.hs index 59a644549..c3249be34 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbol.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbol.hs @@ -80,4 +80,4 @@ instance Aeson.ToJSON WorkspaceSymbol where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolClientCapabilities.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolClientCapabilities.hs index 34ebd98a7..5ede0b5bc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolClientCapabilities.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolClientCapabilities.hs @@ -60,4 +60,4 @@ instance Aeson.ToJSON WorkspaceSymbolClientCapabilities where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolOptions.hs index 95d4d5a60..b28b88a76 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolOptions.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON WorkspaceSymbolOptions where ,"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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolParams.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolParams.hs index 294950a02..d68efcf2f 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolParams.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolParams.hs @@ -48,4 +48,4 @@ instance Aeson.ToJSON WorkspaceSymbolParams where ,["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" diff --git a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolRegistrationOptions.hs b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolRegistrationOptions.hs index 122361c8d..9044e58cc 100644 --- a/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolRegistrationOptions.hs +++ b/lsp-types/generated/Language/LSP/Protocol/Internal/Types/WorkspaceSymbolRegistrationOptions.hs @@ -42,4 +42,4 @@ instance Aeson.ToJSON WorkspaceSymbolRegistrationOptions where ,"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" diff --git a/lsp-types/generator/CodeGen.hs b/lsp-types/generator/CodeGen.hs index a3b365827..d15508cfb 100644 --- a/lsp-types/generator/CodeGen.hs +++ b/lsp-types/generator/CodeGen.hs @@ -334,12 +334,13 @@ printStruct tn s@Structure{name, documentation, since, proposed, deprecated} = d 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 +352,9 @@ printStruct tn s@Structure{name, documentation, since, proposed, deprecated} = d 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 @@ -1022,3 +1025,24 @@ are associated, followed by an underscore. So the constructors of `X` will be 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. +-} diff --git a/lsp-types/src/Data/Row/Aeson.hs b/lsp-types/src/Data/Row/Aeson.hs index 7d4224e6a..ca0d282fd 100644 --- a/lsp-types/src/Data/Row/Aeson.hs +++ b/lsp-types/src/Data/Row/Aeson.hs @@ -31,6 +31,8 @@ import Data.Functor.Identity 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 +56,8 @@ class FromJSONEntry a where 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) diff --git a/lsp-types/src/Language/LSP/Protocol/Message/Types.hs b/lsp-types/src/Language/LSP/Protocol/Message/Types.hs index 9f3cf69d4..b41a5627c 100644 --- a/lsp-types/src/Language/LSP/Protocol/Message/Types.hs +++ b/lsp-types/src/Language/LSP/Protocol/Message/Types.hs @@ -83,7 +83,7 @@ instance FromJSON ResponseError where ResponseError <$> v .: "code" <*> v .: "message" - <*> v .:? "data" + <*> v .:!? "data" in fmap go . errorCode where go :: ResponseError -> ResponseError @@ -175,7 +175,7 @@ instance (FromJSON (ErrorData m)) => FromJSON (TResponseError m) where TResponseError <$> v .: "code" <*> v .: "message" - <*> v .:? "data" + <*> v .:!? "data" in fmap go . errorCode where go :: TResponseError m -> TResponseError m @@ -218,9 +218,8 @@ instance (FromJSON (MessageResult a), FromJSON (ErrorData a)) => FromJSON (TResp 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 diff --git a/lsp-types/src/Language/LSP/Protocol/Types/Common.hs b/lsp-types/src/Language/LSP/Protocol/Types/Common.hs index 6d3b0486b..7084b90c0 100644 --- a/lsp-types/src/Language/LSP/Protocol/Types/Common.hs +++ b/lsp-types/src/Language/LSP/Protocol/Types/Common.hs @@ -21,13 +21,16 @@ module Language.LSP.Protocol.Types.Common ( nullToMaybe, maybeToNull, (.=?), + (.:!?), ) where +import Control.Applicative import Control.DeepSeq import Control.Lens import Data.Aeson hiding (Null) import Data.Aeson qualified as J 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 @@ -187,3 +190,30 @@ instance Semigroup s => Semigroup (s |? Null) where 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 ' + * '.:!?': the result is success with 'Just ' + * 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 ', +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 diff --git a/lsp-types/test/JsonSpec.hs b/lsp-types/test/JsonSpec.hs index 5e70d508b..c3af4f812 100644 --- a/lsp-types/test/JsonSpec.hs +++ b/lsp-types/test/JsonSpec.hs @@ -2,6 +2,7 @@ {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE OverloadedLabels #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} @@ -22,6 +23,7 @@ import Language.LSP.Protocol.Types import Data.Aeson qualified as J import Data.List (isPrefixOf) +import Data.Row import Data.Row qualified as R import Data.Row.Records qualified as R import Data.Void @@ -30,55 +32,64 @@ 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 - --- --------------------------------------------------------------------- - -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 "MarkedString" $ do + prop "roundtrip" (propertyJsonRoundtrip :: MarkedString -> Property) + + describe "MarkupContent" $ do + prop "roundtrip" (propertyJsonRoundtrip :: MarkupContent -> Property) + + 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 +99,13 @@ responseMessageSpec = do 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) @@ -204,6 +218,10 @@ instance Arbitrary LSPErrorCodes where -- --------------------------------------------------------------------- +instance Arbitrary Registration where + arbitrary = Registration <$> arbitrary <*> arbitrary <*> arbitrary + shrink = genericShrink + instance Arbitrary DidChangeWatchedFilesRegistrationOptions where arbitrary = DidChangeWatchedFilesRegistrationOptions <$> arbitrary shrink = genericShrink