Revision control
++ // Copyright (C) 2021 The Qt Company Ltd.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
++ // Qt-Security score:significant
++
++ // this file was generated by the generate.ts script
++
++ #ifndef QLANGUAGESERVERSPEC_P_H
++ #define QLANGUAGESERVERSPEC_P_H
++
++ //
++ // W A R N I N G
++ // -------------
++ //
++ // This file is not part of the Qt API. It exists purely as an
++ // implementation detail. This header file may change from version to
++ // version without notice, or even be removed.
++ //
++ // We mean it.
++ //
++
++ #include <QtLanguageServer/qtlanguageserverglobal.h>
++ #include <QtLanguageServer/private/qlanguageserverspectypes_p.h>
++
++ QT_BEGIN_NAMESPACE
++
++ namespace QLspSpecification {
++ namespace Requests {
++ // C++ types for the LSP method "callHierarchy/incomingCalls"
++ constexpr auto CallHierarchyIncomingCallsMethod = QLatin1String("callHierarchy/incomingCalls");
++ using CallHierarchyIncomingCallsParamsType = CallHierarchyIncomingCallsParams;
++ using CallHierarchyIncomingCallsResultType =
++ std::variant<std::nullptr_t, QList<CallHierarchyIncomingCall>>;
++ using CallHierarchyIncomingCallsPartialResultType = QList<CallHierarchyIncomingCall>;
++ using CallHierarchyIncomingCallsResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<CallHierarchyIncomingCall>>,
++ QList<CallHierarchyIncomingCall>>;
++
++ // C++ types for the LSP method "callHierarchy/outgoingCalls"
++ constexpr auto CallHierarchyOutgoingCallsMethod = QLatin1String("callHierarchy/outgoingCalls");
++ using CallHierarchyOutgoingCallsParamsType = CallHierarchyOutgoingCallsParams;
++ using CallHierarchyOutgoingCallsResultType =
++ std::variant<std::nullptr_t, QList<CallHierarchyOutgoingCall>>;
++ using CallHierarchyOutgoingCallsPartialResultType = QList<CallHierarchyOutgoingCall>;
++ using CallHierarchyOutgoingCallsResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<CallHierarchyOutgoingCall>>,
++ QList<CallHierarchyOutgoingCall>>;
++
++ // C++ types for the LSP method "client/registerCapability"
++ constexpr auto RegistrationMethod = QLatin1String("client/registerCapability");
++ using RegistrationParamsType = RegistrationParams;
++ using RegistrationResultType = std::nullptr_t;
++ using RegistrationResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "client/unregisterCapability"
++ constexpr auto UnregistrationMethod = QLatin1String("client/unregisterCapability");
++ using UnregistrationParamsType = UnregistrationParams;
++ using UnregistrationResultType = std::nullptr_t;
++ using UnregistrationResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "codeAction/resolve"
++ constexpr auto CodeActionResolveMethod = QLatin1String("codeAction/resolve");
++ using CodeActionResolveParamsType = CodeAction;
++ using CodeActionResolveResultType = CodeAction;
++ using CodeActionResolveResponseType = LSPResponse<CodeAction>;
++
++ // C++ types for the LSP method "codeLens/resolve"
++ constexpr auto CodeLensResolveMethod = QLatin1String("codeLens/resolve");
++ using CodeLensResolveParamsType = CodeLens;
++ using CodeLensResolveResultType = CodeLens;
++ using CodeLensResolveResponseType = LSPResponse<CodeLens>;
++
++ // C++ types for the LSP method "completionItem/resolve"
++ constexpr auto CompletionItemResolveMethod = QLatin1String("completionItem/resolve");
++ using CompletionItemResolveParamsType = CompletionItem;
++ using CompletionItemResolveResultType = CompletionItem;
++ using CompletionItemResolveResponseType = LSPResponse<CompletionItem>;
++
++ // C++ types for the LSP method "documentLink/resolve"
++ constexpr auto DocumentLinkResolveMethod = QLatin1String("documentLink/resolve");
++ using DocumentLinkResolveParamsType = DocumentLink;
++ using DocumentLinkResolveResultType = DocumentLink;
++ using DocumentLinkResolveResponseType = LSPResponse<DocumentLink>;
++
++ // C++ types for the LSP method "initialize"
++ constexpr auto InitializeMethod = QLatin1String("initialize");
++ using InitializeParamsType = InitializeParams;
++ using InitializeResultType = InitializeResult;
++ using InitializeResponseType = LSPResponse<InitializeResult>;
++
++ // C++ types for the LSP method "inlayHint/resolve"
++ constexpr auto InlayHintResolveMethod = QLatin1String("inlayHint/resolve");
++ using InlayHintResolveParamsType = InlayHint;
++ using InlayHintResolveResultType = InlayHint;
++ using InlayHintResolveResponseType = LSPResponse<InlayHint>;
++
++ // C++ types for the LSP method "shutdown"
++ constexpr auto ShutdownMethod = QLatin1String("shutdown");
++ using ShutdownParamsType = std::nullptr_t;
++ using ShutdownResultType = std::nullptr_t;
++ using ShutdownResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "textDocument/codeAction"
++ constexpr auto CodeActionMethod = QLatin1String("textDocument/codeAction");
++ using CodeActionParamsType = CodeActionParams;
++ using CodeActionResultType = std::variant<std::nullptr_t, QList<std::variant<Command, CodeAction>>>;
++ using CodeActionPartialResultType = QList<std::variant<Command, CodeAction>>;
++ using CodeActionResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<std::variant<Command, CodeAction>>>,
++ QList<std::variant<Command, CodeAction>>>;
++
++ // C++ types for the LSP method "textDocument/codeLens"
++ constexpr auto CodeLensMethod = QLatin1String("textDocument/codeLens");
++ using CodeLensParamsType = CodeLensParams;
++ using CodeLensResultType = std::variant<std::nullptr_t, QList<CodeLens>>;
++ using CodeLensPartialResultType = QList<CodeLens>;
++ using CodeLensResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<CodeLens>>, QList<CodeLens>>;
++
++ // C++ types for the LSP method "textDocument/colorPresentation"
++ constexpr auto ColorPresentationMethod = QLatin1String("textDocument/colorPresentation");
++ using ColorPresentationParamsType = ColorPresentationParams;
++ using ColorPresentationResultType = QList<ColorPresentation>;
++ using ColorPresentationPartialResultType = QList<ColorPresentation>;
++ using ColorPresentationResponseType =
++ LSPPartialResponse<QList<ColorPresentation>, QList<ColorPresentation>>;
++
++ // C++ types for the LSP method "textDocument/completion"
++ constexpr auto CompletionMethod = QLatin1String("textDocument/completion");
++ using CompletionParamsType = CompletionParams;
++ using CompletionResultType = std::variant<std::nullptr_t, QList<CompletionItem>, CompletionList>;
++ using CompletionPartialResultType = QList<CompletionItem>;
++ using CompletionResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<CompletionItem>, CompletionList>,
++ QList<CompletionItem>>;
++
++ // C++ types for the LSP method "textDocument/declaration"
++ constexpr auto DeclarationMethod = QLatin1String("textDocument/declaration");
++ using DeclarationParamsType = DeclarationParams;
++ using DeclarationResultType = std::variant<std::nullptr_t, Declaration, QList<DeclarationLink>>;
++ using DeclarationPartialResultType = std::variant<QList<Location>, QList<DeclarationLink>>;
++ using DeclarationResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, Declaration, QList<DeclarationLink>>,
++ std::variant<QList<Location>, QList<DeclarationLink>>>;
++
++ // C++ types for the LSP method "textDocument/definition"
++ constexpr auto DefinitionMethod = QLatin1String("textDocument/definition");
++ using DefinitionParamsType = DefinitionParams;
++ using DefinitionResultType = std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>;
++ using DefinitionPartialResultType = std::variant<QList<Location>, QList<DefinitionLink>>;
++ using DefinitionResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>,
++ std::variant<QList<Location>, QList<DefinitionLink>>>;
++
++ // C++ types for the LSP method "textDocument/diagnostic"
++ constexpr auto DocumentDiagnosticMethod = QLatin1String("textDocument/diagnostic");
++ using DocumentDiagnosticParamsType = DocumentDiagnosticParams;
++ using DocumentDiagnosticResultType = DocumentDiagnosticReport;
++ using DocumentDiagnosticPartialResultType = DocumentDiagnosticReportProgress;
++ using DocumentDiagnosticResponseType =
++ LSPPartialResponse<DocumentDiagnosticReport, DocumentDiagnosticReportProgress>;
++
++ // C++ types for the LSP method "textDocument/documentColor"
++ constexpr auto DocumentColorMethod = QLatin1String("textDocument/documentColor");
++ using DocumentColorParamsType = DocumentColorParams;
++ using DocumentColorResultType = QList<ColorInformation>;
++ using DocumentColorPartialResultType = QList<ColorInformation>;
++ using DocumentColorResponseType =
++ LSPPartialResponse<QList<ColorInformation>, QList<ColorInformation>>;
++
++ // C++ types for the LSP method "textDocument/documentHighlight"
++ constexpr auto DocumentHighlightMethod = QLatin1String("textDocument/documentHighlight");
++ using DocumentHighlightParamsType = DocumentHighlightParams;
++ using DocumentHighlightResultType = std::variant<std::nullptr_t, QList<DocumentHighlight>>;
++ using DocumentHighlightPartialResultType = QList<DocumentHighlight>;
++ using DocumentHighlightResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<DocumentHighlight>>,
++ QList<DocumentHighlight>>;
++
++ // C++ types for the LSP method "textDocument/documentLink"
++ constexpr auto DocumentLinkMethod = QLatin1String("textDocument/documentLink");
++ using DocumentLinkParamsType = DocumentLinkParams;
++ using DocumentLinkResultType = std::variant<std::nullptr_t, QList<DocumentLink>>;
++ using DocumentLinkPartialResultType = QList<DocumentLink>;
++ using DocumentLinkResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<DocumentLink>>, QList<DocumentLink>>;
++
++ // C++ types for the LSP method "textDocument/documentSymbol"
++ constexpr auto DocumentSymbolMethod = QLatin1String("textDocument/documentSymbol");
++ using DocumentSymbolParamsType = DocumentSymbolParams;
++ using DocumentSymbolResultType =
++ std::variant<std::nullptr_t, QList<SymbolInformation>, QList<DocumentSymbol>>;
++ using DocumentSymbolPartialResultType =
++ std::variant<QList<SymbolInformation>, QList<DocumentSymbol>>;
++ using DocumentSymbolResponseType = LSPPartialResponse<
++ std::variant<std::nullptr_t, QList<SymbolInformation>, QList<DocumentSymbol>>,
++ std::variant<QList<SymbolInformation>, QList<DocumentSymbol>>>;
++
++ // C++ types for the LSP method "textDocument/foldingRange"
++ constexpr auto FoldingRangeMethod = QLatin1String("textDocument/foldingRange");
++ using FoldingRangeParamsType = FoldingRangeParams;
++ using FoldingRangeResultType = std::variant<std::nullptr_t, QList<FoldingRange>>;
++ using FoldingRangePartialResultType = QList<FoldingRange>;
++ using FoldingRangeResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<FoldingRange>>, QList<FoldingRange>>;
++
++ // C++ types for the LSP method "textDocument/formatting"
++ constexpr auto DocumentFormattingMethod = QLatin1String("textDocument/formatting");
++ using DocumentFormattingParamsType = DocumentFormattingParams;
++ using DocumentFormattingResultType = std::variant<std::nullptr_t, QList<TextEdit>>;
++ using DocumentFormattingResponseType = LSPResponse<std::variant<std::nullptr_t, QList<TextEdit>>>;
++
++ // C++ types for the LSP method "textDocument/hover"
++ constexpr auto HoverMethod = QLatin1String("textDocument/hover");
++ using HoverParamsType = HoverParams;
++ using HoverResultType = std::variant<std::nullptr_t, Hover>;
++ using HoverResponseType = LSPResponse<std::variant<std::nullptr_t, Hover>>;
++
++ // C++ types for the LSP method "textDocument/implementation"
++ constexpr auto ImplementationMethod = QLatin1String("textDocument/implementation");
++ using ImplementationParamsType = ImplementationParams;
++ using ImplementationResultType = std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>;
++ using ImplementationPartialResultType = std::variant<QList<Location>, QList<DefinitionLink>>;
++ using ImplementationResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>,
++ std::variant<QList<Location>, QList<DefinitionLink>>>;
++
++ // C++ types for the LSP method "textDocument/inlayHint"
++ constexpr auto InlayHintMethod = QLatin1String("textDocument/inlayHint");
++ using InlayHintParamsType = InlayHintParams;
++ using InlayHintResultType = std::variant<std::nullptr_t, QList<InlayHint>>;
++ using InlayHintPartialResultType = QList<InlayHint>;
++ using InlayHintResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<InlayHint>>, QList<InlayHint>>;
++
++ // C++ types for the LSP method "textDocument/inlineCompletion"
++ constexpr auto InlineCompletionMethod = QLatin1String("textDocument/inlineCompletion");
++ using InlineCompletionParamsType = InlineCompletionParams;
++ using InlineCompletionResultType =
++ std::variant<std::nullptr_t, InlineCompletionList, QList<InlineCompletionItem>>;
++ using InlineCompletionPartialResultType = QList<InlineCompletionItem>;
++ using InlineCompletionResponseType = LSPPartialResponse<
++ std::variant<std::nullptr_t, InlineCompletionList, QList<InlineCompletionItem>>,
++ QList<InlineCompletionItem>>;
++
++ // C++ types for the LSP method "textDocument/inlineValue"
++ constexpr auto InlineValueMethod = QLatin1String("textDocument/inlineValue");
++ using InlineValueParamsType = InlineValueParams;
++ using InlineValueResultType = std::variant<std::nullptr_t, QList<InlineValue>>;
++ using InlineValuePartialResultType = QList<InlineValue>;
++ using InlineValueResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<InlineValue>>, QList<InlineValue>>;
++
++ // C++ types for the LSP method "textDocument/linkedEditingRange"
++ constexpr auto LinkedEditingRangeMethod = QLatin1String("textDocument/linkedEditingRange");
++ using LinkedEditingRangeParamsType = LinkedEditingRangeParams;
++ using LinkedEditingRangeResultType = std::variant<std::nullptr_t, LinkedEditingRanges>;
++ using LinkedEditingRangeResponseType =
++ LSPResponse<std::variant<std::nullptr_t, LinkedEditingRanges>>;
++
++ // C++ types for the LSP method "textDocument/moniker"
++ constexpr auto MonikerMethod = QLatin1String("textDocument/moniker");
++ using MonikerParamsType = MonikerParams;
++ using MonikerResultType = std::variant<std::nullptr_t, QList<Moniker>>;
++ using MonikerPartialResultType = QList<Moniker>;
++ using MonikerResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<Moniker>>, QList<Moniker>>;
++
++ // C++ types for the LSP method "textDocument/onTypeFormatting"
++ constexpr auto DocumentOnTypeFormattingMethod = QLatin1String("textDocument/onTypeFormatting");
++ using DocumentOnTypeFormattingParamsType = DocumentOnTypeFormattingParams;
++ using DocumentOnTypeFormattingResultType = std::variant<std::nullptr_t, QList<TextEdit>>;
++ using DocumentOnTypeFormattingResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<TextEdit>>>;
++
++ // C++ types for the LSP method "textDocument/prepareCallHierarchy"
++ constexpr auto CallHierarchyPrepareMethod = QLatin1String("textDocument/prepareCallHierarchy");
++ using CallHierarchyPrepareParamsType = CallHierarchyPrepareParams;
++ using CallHierarchyPrepareResultType = std::variant<std::nullptr_t, QList<CallHierarchyItem>>;
++ using CallHierarchyPrepareResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<CallHierarchyItem>>>;
++
++ // C++ types for the LSP method "textDocument/prepareRename"
++ constexpr auto PrepareRenameMethod = QLatin1String("textDocument/prepareRename");
++ using PrepareRenameParamsType = PrepareRenameParams;
++ using PrepareRenameResultType = std::variant<std::nullptr_t, PrepareRenameResult>;
++ using PrepareRenameResponseType = LSPResponse<std::variant<std::nullptr_t, PrepareRenameResult>>;
++
++ // C++ types for the LSP method "textDocument/prepareTypeHierarchy"
++ constexpr auto TypeHierarchyPrepareMethod = QLatin1String("textDocument/prepareTypeHierarchy");
++ using TypeHierarchyPrepareParamsType = TypeHierarchyPrepareParams;
++ using TypeHierarchyPrepareResultType = std::variant<std::nullptr_t, QList<TypeHierarchyItem>>;
++ using TypeHierarchyPrepareResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<TypeHierarchyItem>>>;
++
++ // C++ types for the LSP method "textDocument/rangeFormatting"
++ constexpr auto DocumentRangeFormattingMethod = QLatin1String("textDocument/rangeFormatting");
++ using DocumentRangeFormattingParamsType = DocumentRangeFormattingParams;
++ using DocumentRangeFormattingResultType = std::variant<std::nullptr_t, QList<TextEdit>>;
++ using DocumentRangeFormattingResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<TextEdit>>>;
++
++ // C++ types for the LSP method "textDocument/rangesFormatting"
++ constexpr auto DocumentRangesFormattingMethod = QLatin1String("textDocument/rangesFormatting");
++ using DocumentRangesFormattingParamsType = DocumentRangesFormattingParams;
++ using DocumentRangesFormattingResultType = std::variant<std::nullptr_t, QList<TextEdit>>;
++ using DocumentRangesFormattingResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<TextEdit>>>;
++
++ // C++ types for the LSP method "textDocument/references"
++ constexpr auto ReferenceMethod = QLatin1String("textDocument/references");
++ using ReferenceParamsType = ReferenceParams;
++ using ReferenceResultType = std::variant<std::nullptr_t, QList<Location>>;
++ using ReferencePartialResultType = QList<Location>;
++ using ReferenceResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<Location>>, QList<Location>>;
++
++ // C++ types for the LSP method "textDocument/rename"
++ constexpr auto RenameMethod = QLatin1String("textDocument/rename");
++ using RenameParamsType = RenameParams;
++ using RenameResultType = std::variant<std::nullptr_t, WorkspaceEdit>;
++ using RenameResponseType = LSPResponse<std::variant<std::nullptr_t, WorkspaceEdit>>;
++
++ // C++ types for the LSP method "textDocument/selectionRange"
++ constexpr auto SelectionRangeMethod = QLatin1String("textDocument/selectionRange");
++ using SelectionRangeParamsType = SelectionRangeParams;
++ using SelectionRangeResultType = std::variant<std::nullptr_t, QList<SelectionRange>>;
++ using SelectionRangePartialResultType = QList<SelectionRange>;
++ using SelectionRangeResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<SelectionRange>>,
++ QList<SelectionRange>>;
++
++ // C++ types for the LSP method "textDocument/semanticTokens/full"
++ constexpr auto SemanticTokensMethod = QLatin1String("textDocument/semanticTokens/full");
++ using SemanticTokensParamsType = SemanticTokensParams;
++ using SemanticTokensResultType = std::variant<std::nullptr_t, SemanticTokens>;
++ using SemanticTokensPartialResultType = SemanticTokensPartialResult;
++ using SemanticTokensResponseType = LSPPartialResponse<std::variant<std::nullptr_t, SemanticTokens>,
++ SemanticTokensPartialResult>;
++
++ // C++ types for the LSP method "textDocument/semanticTokens/full/delta"
++ constexpr auto SemanticTokensDeltaMethod = QLatin1String("textDocument/semanticTokens/full/delta");
++ using SemanticTokensDeltaParamsType = SemanticTokensDeltaParams;
++ using SemanticTokensDeltaResultType =
++ std::variant<std::nullptr_t, SemanticTokens, SemanticTokensDelta>;
++ using SemanticTokensDeltaPartialResultType =
++ std::variant<SemanticTokensPartialResult, SemanticTokensDeltaPartialResult>;
++ using SemanticTokensDeltaResponseType = LSPPartialResponse<
++ std::variant<std::nullptr_t, SemanticTokens, SemanticTokensDelta>,
++ std::variant<SemanticTokensPartialResult, SemanticTokensDeltaPartialResult>>;
++
++ // C++ types for the LSP method "textDocument/semanticTokens/range"
++ constexpr auto SemanticTokensRangeMethod = QLatin1String("textDocument/semanticTokens/range");
++ using SemanticTokensRangeParamsType = SemanticTokensRangeParams;
++ using SemanticTokensRangeResultType = std::variant<std::nullptr_t, SemanticTokens>;
++ using SemanticTokensRangePartialResultType = SemanticTokensPartialResult;
++ using SemanticTokensRangeResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, SemanticTokens>,
++ SemanticTokensPartialResult>;
++
++ // C++ types for the LSP method "textDocument/signatureHelp"
++ constexpr auto SignatureHelpMethod = QLatin1String("textDocument/signatureHelp");
++ using SignatureHelpParamsType = SignatureHelpParams;
++ using SignatureHelpResultType = std::variant<std::nullptr_t, SignatureHelp>;
++ using SignatureHelpResponseType = LSPResponse<std::variant<std::nullptr_t, SignatureHelp>>;
++
++ // C++ types for the LSP method "textDocument/typeDefinition"
++ constexpr auto TypeDefinitionMethod = QLatin1String("textDocument/typeDefinition");
++ using TypeDefinitionParamsType = TypeDefinitionParams;
++ using TypeDefinitionResultType = std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>;
++ using TypeDefinitionPartialResultType = std::variant<QList<Location>, QList<DefinitionLink>>;
++ using TypeDefinitionResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, Definition, QList<DefinitionLink>>,
++ std::variant<QList<Location>, QList<DefinitionLink>>>;
++
++ // C++ types for the LSP method "textDocument/willSaveWaitUntil"
++ constexpr auto WillSaveTextDocumentMethod = QLatin1String("textDocument/willSaveWaitUntil");
++ using WillSaveTextDocumentParamsType = WillSaveTextDocumentParams;
++ using WillSaveTextDocumentResultType = std::variant<std::nullptr_t, QList<TextEdit>>;
++ using WillSaveTextDocumentResponseType = LSPResponse<std::variant<std::nullptr_t, QList<TextEdit>>>;
++
++ // C++ types for the LSP method "typeHierarchy/subtypes"
++ constexpr auto TypeHierarchySubtypesMethod = QLatin1String("typeHierarchy/subtypes");
++ using TypeHierarchySubtypesParamsType = TypeHierarchySubtypesParams;
++ using TypeHierarchySubtypesResultType = std::variant<std::nullptr_t, QList<TypeHierarchyItem>>;
++ using TypeHierarchySubtypesPartialResultType = QList<TypeHierarchyItem>;
++ using TypeHierarchySubtypesResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<TypeHierarchyItem>>,
++ QList<TypeHierarchyItem>>;
++
++ // C++ types for the LSP method "typeHierarchy/supertypes"
++ constexpr auto TypeHierarchySupertypesMethod = QLatin1String("typeHierarchy/supertypes");
++ using TypeHierarchySupertypesParamsType = TypeHierarchySupertypesParams;
++ using TypeHierarchySupertypesResultType = std::variant<std::nullptr_t, QList<TypeHierarchyItem>>;
++ using TypeHierarchySupertypesPartialResultType = QList<TypeHierarchyItem>;
++ using TypeHierarchySupertypesResponseType =
++ LSPPartialResponse<std::variant<std::nullptr_t, QList<TypeHierarchyItem>>,
++ QList<TypeHierarchyItem>>;
++
++ // C++ types for the LSP method "window/showDocument"
++ constexpr auto ShowDocumentMethod = QLatin1String("window/showDocument");
++ using ShowDocumentParamsType = ShowDocumentParams;
++ using ShowDocumentResultType = ShowDocumentResult;
++ using ShowDocumentResponseType = LSPResponse<ShowDocumentResult>;
++
++ // C++ types for the LSP method "window/showMessageRequest"
++ constexpr auto ShowMessageRequestMethod = QLatin1String("window/showMessageRequest");
++ using ShowMessageRequestParamsType = ShowMessageRequestParams;
++ using ShowMessageRequestResultType = std::variant<std::nullptr_t, MessageActionItem>;
++ using ShowMessageRequestResponseType = LSPResponse<std::variant<std::nullptr_t, MessageActionItem>>;
++
++ // C++ types for the LSP method "window/workDoneProgress/create"
++ constexpr auto WorkDoneProgressCreateMethod = QLatin1String("window/workDoneProgress/create");
++ using WorkDoneProgressCreateParamsType = WorkDoneProgressCreateParams;
++ using WorkDoneProgressCreateResultType = std::nullptr_t;
++ using WorkDoneProgressCreateResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/applyEdit"
++ constexpr auto ApplyWorkspaceEditMethod = QLatin1String("workspace/applyEdit");
++ using ApplyWorkspaceEditParamsType = ApplyWorkspaceEditParams;
++ using ApplyWorkspaceEditResultType = ApplyWorkspaceEditResult;
++ using ApplyWorkspaceEditResponseType = LSPResponse<ApplyWorkspaceEditResult>;
++
++ // C++ types for the LSP method "workspace/codeLens/refresh"
++ constexpr auto WorkspaceCodeLensRefreshMethod = QLatin1String("workspace/codeLens/refresh");
++ using WorkspaceCodeLensRefreshParamsType = std::nullptr_t;
++ using WorkspaceCodeLensRefreshResultType = std::nullptr_t;
++ using WorkspaceCodeLensRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/configuration"
++ constexpr auto ConfigurationMethod = QLatin1String("workspace/configuration");
++ using ConfigurationParamsType = ConfigurationParams;
++ using ConfigurationResultType = QList<QJsonValue>;
++ using ConfigurationResponseType = LSPResponse<QList<QJsonValue>>;
++
++ // C++ types for the LSP method "workspace/diagnostic"
++ constexpr auto WorkspaceDiagnosticMethod = QLatin1String("workspace/diagnostic");
++ using WorkspaceDiagnosticParamsType = WorkspaceDiagnosticParams;
++ using WorkspaceDiagnosticResultType = WorkspaceDiagnosticReport;
++ using WorkspaceDiagnosticPartialResultType = WorkspaceDiagnosticReportPartialResult;
++ using WorkspaceDiagnosticResponseType =
++ LSPPartialResponse<WorkspaceDiagnosticReport, WorkspaceDiagnosticReportPartialResult>;
++
++ // C++ types for the LSP method "workspace/diagnostic/refresh"
++ constexpr auto WorkspaceDiagnosticRefreshMethod = QLatin1String("workspace/diagnostic/refresh");
++ using WorkspaceDiagnosticRefreshParamsType = std::nullptr_t;
++ using WorkspaceDiagnosticRefreshResultType = std::nullptr_t;
++ using WorkspaceDiagnosticRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/executeCommand"
++ constexpr auto ExecuteCommandMethod = QLatin1String("workspace/executeCommand");
++ using ExecuteCommandParamsType = ExecuteCommandParams;
++ using ExecuteCommandResultType = std::variant<std::nullptr_t, QJsonValue>;
++ using ExecuteCommandResponseType = LSPResponse<std::variant<std::nullptr_t, QJsonValue>>;
++
++ // C++ types for the LSP method "workspace/foldingRange/refresh"
++ constexpr auto WorkspaceFoldingRangeRefreshMethod = QLatin1String("workspace/foldingRange/refresh");
++ using WorkspaceFoldingRangeRefreshParamsType = std::nullptr_t;
++ using WorkspaceFoldingRangeRefreshResultType = std::nullptr_t;
++ using WorkspaceFoldingRangeRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/inlayHint/refresh"
++ constexpr auto WorkspaceInlayHintRefreshMethod = QLatin1String("workspace/inlayHint/refresh");
++ using WorkspaceInlayHintRefreshParamsType = std::nullptr_t;
++ using WorkspaceInlayHintRefreshResultType = std::nullptr_t;
++ using WorkspaceInlayHintRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/inlineValue/refresh"
++ constexpr auto WorkspaceInlineValueRefreshMethod = QLatin1String("workspace/inlineValue/refresh");
++ using WorkspaceInlineValueRefreshParamsType = std::nullptr_t;
++ using WorkspaceInlineValueRefreshResultType = std::nullptr_t;
++ using WorkspaceInlineValueRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/semanticTokens/refresh"
++ constexpr auto WorkspaceSemanticTokensRefreshMethod =
++ QLatin1String("workspace/semanticTokens/refresh");
++ using WorkspaceSemanticTokensRefreshParamsType = std::nullptr_t;
++ using WorkspaceSemanticTokensRefreshResultType = std::nullptr_t;
++ using WorkspaceSemanticTokensRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/symbol"
++ constexpr auto WorkspaceSymbolMethod = QLatin1String("workspace/symbol");
++ using WorkspaceSymbolParamsType = WorkspaceSymbolParams;
++ using WorkspaceSymbolResultType =
++ std::variant<std::nullptr_t, QList<SymbolInformation>, QList<WorkspaceSymbol>>;
++ using WorkspaceSymbolPartialResultType =
++ std::variant<QList<SymbolInformation>, QList<WorkspaceSymbol>>;
++ using WorkspaceSymbolResponseType = LSPPartialResponse<
++ std::variant<std::nullptr_t, QList<SymbolInformation>, QList<WorkspaceSymbol>>,
++ std::variant<QList<SymbolInformation>, QList<WorkspaceSymbol>>>;
++
++ // C++ types for the LSP method "workspace/textDocumentContent"
++ constexpr auto TextDocumentContentMethod = QLatin1String("workspace/textDocumentContent");
++ using TextDocumentContentParamsType = TextDocumentContentParams;
++ using TextDocumentContentResultType = TextDocumentContentResult;
++ using TextDocumentContentResponseType = LSPResponse<TextDocumentContentResult>;
++
++ // C++ types for the LSP method "workspace/textDocumentContent/refresh"
++ constexpr auto TextDocumentContentRefreshMethod =
++ QLatin1String("workspace/textDocumentContent/refresh");
++ using TextDocumentContentRefreshParamsType = TextDocumentContentRefreshParams;
++ using TextDocumentContentRefreshResultType = std::nullptr_t;
++ using TextDocumentContentRefreshResponseType = LSPResponse<std::nullptr_t>;
++
++ // C++ types for the LSP method "workspace/willCreateFiles"
++ constexpr auto CreateFilesMethod = QLatin1String("workspace/willCreateFiles");
++ using CreateFilesParamsType = CreateFilesParams;
++ using CreateFilesResultType = std::variant<std::nullptr_t, WorkspaceEdit>;
++ using CreateFilesResponseType = LSPResponse<std::variant<std::nullptr_t, WorkspaceEdit>>;
++
++ // C++ types for the LSP method "workspace/willDeleteFiles"
++ constexpr auto DeleteFilesMethod = QLatin1String("workspace/willDeleteFiles");
++ using DeleteFilesParamsType = DeleteFilesParams;
++ using DeleteFilesResultType = std::variant<std::nullptr_t, WorkspaceEdit>;
++ using DeleteFilesResponseType = LSPResponse<std::variant<std::nullptr_t, WorkspaceEdit>>;
++
++ // C++ types for the LSP method "workspace/willRenameFiles"
++ constexpr auto RenameFilesMethod = QLatin1String("workspace/willRenameFiles");
++ using RenameFilesParamsType = RenameFilesParams;
++ using RenameFilesResultType = std::variant<std::nullptr_t, WorkspaceEdit>;
++ using RenameFilesResponseType = LSPResponse<std::variant<std::nullptr_t, WorkspaceEdit>>;
++
++ // C++ types for the LSP method "workspace/workspaceFolders"
++ constexpr auto WorkspaceWorkspaceFoldersMethod = QLatin1String("workspace/workspaceFolders");
++ using WorkspaceWorkspaceFoldersParamsType = std::nullptr_t;
++ using WorkspaceWorkspaceFoldersResultType = std::variant<std::nullptr_t, QList<WorkspaceFolder>>;
++ using WorkspaceWorkspaceFoldersResponseType =
++ LSPResponse<std::variant<std::nullptr_t, QList<WorkspaceFolder>>>;
++
++ // C++ types for the LSP method "workspaceSymbol/resolve"
++ constexpr auto WorkspaceSymbolResolveMethod = QLatin1String("workspaceSymbol/resolve");
++ using WorkspaceSymbolResolveParamsType = WorkspaceSymbol;
++ using WorkspaceSymbolResolveResultType = WorkspaceSymbol;
++ using WorkspaceSymbolResolveResponseType = LSPResponse<WorkspaceSymbol>;
++
++ } // namespace Requests
++ // for compatibility reasons:
++ namespace Responses {
++ using namespace Requests;
++ }
++
++ namespace Notifications {
++ // C++ types for the LSP method "$/cancelRequest"
++ constexpr auto CancelMethod = "$/cancelRequest";
++ using CancelParamsType = CancelParams;
++
++ // C++ types for the LSP method "$/logTrace"
++ constexpr auto LogTraceMethod = "$/logTrace";
++ using LogTraceParamsType = LogTraceParams;
++
++ // C++ types for the LSP method "$/progress"
++ constexpr auto ProgressMethod = "$/progress";
++ using ProgressParamsType = ProgressParams;
++
++ // C++ types for the LSP method "$/setTrace"
++ constexpr auto SetTraceMethod = "$/setTrace";
++ using SetTraceParamsType = SetTraceParams;
++
++ // C++ types for the LSP method "exit"
++ constexpr auto ExitMethod = "exit";
++ using ExitParamsType = std::nullptr_t;
++
++ // C++ types for the LSP method "initialized"
++ constexpr auto InitializedMethod = "initialized";
++ using InitializedParamsType = InitializedParams;
++
++ // C++ types for the LSP method "notebookDocument/didChange"
++ constexpr auto DidChangeNotebookDocumentMethod = "notebookDocument/didChange";
++ using DidChangeNotebookDocumentParamsType = DidChangeNotebookDocumentParams;
++
++ // C++ types for the LSP method "notebookDocument/didClose"
++ constexpr auto DidCloseNotebookDocumentMethod = "notebookDocument/didClose";
++ using DidCloseNotebookDocumentParamsType = DidCloseNotebookDocumentParams;
++
++ // C++ types for the LSP method "notebookDocument/didOpen"
++ constexpr auto DidOpenNotebookDocumentMethod = "notebookDocument/didOpen";
++ using DidOpenNotebookDocumentParamsType = DidOpenNotebookDocumentParams;
++
++ // C++ types for the LSP method "notebookDocument/didSave"
++ constexpr auto DidSaveNotebookDocumentMethod = "notebookDocument/didSave";
++ using DidSaveNotebookDocumentParamsType = DidSaveNotebookDocumentParams;
++
++ // C++ types for the LSP method "telemetry/event"
++ constexpr auto TelemetryEventMethod = "telemetry/event";
++ using TelemetryEventParamsType = QJsonValue;
++
++ // C++ types for the LSP method "textDocument/didChange"
++ constexpr auto DidChangeTextDocumentMethod = "textDocument/didChange";
++ using DidChangeTextDocumentParamsType = DidChangeTextDocumentParams;
++
++ // C++ types for the LSP method "textDocument/didClose"
++ constexpr auto DidCloseTextDocumentMethod = "textDocument/didClose";
++ using DidCloseTextDocumentParamsType = DidCloseTextDocumentParams;
++
++ // C++ types for the LSP method "textDocument/didOpen"
++ constexpr auto DidOpenTextDocumentMethod = "textDocument/didOpen";
++ using DidOpenTextDocumentParamsType = DidOpenTextDocumentParams;
++
++ // C++ types for the LSP method "textDocument/didSave"
++ constexpr auto DidSaveTextDocumentMethod = "textDocument/didSave";
++ using DidSaveTextDocumentParamsType = DidSaveTextDocumentParams;
++
++ // C++ types for the LSP method "textDocument/publishDiagnostics"
++ constexpr auto PublishDiagnosticsMethod = "textDocument/publishDiagnostics";
++ using PublishDiagnosticsParamsType = PublishDiagnosticsParams;
++
++ // C++ types for the LSP method "textDocument/willSave"
++ constexpr auto WillSaveTextDocumentMethod = "textDocument/willSave";
++ using WillSaveTextDocumentParamsType = WillSaveTextDocumentParams;
++
++ // C++ types for the LSP method "window/logMessage"
++ constexpr auto LogMessageMethod = "window/logMessage";
++ using LogMessageParamsType = LogMessageParams;
++
++ // C++ types for the LSP method "window/showMessage"
++ constexpr auto ShowMessageMethod = "window/showMessage";
++ using ShowMessageParamsType = ShowMessageParams;
++
++ // C++ types for the LSP method "window/workDoneProgress/cancel"
++ constexpr auto WorkDoneProgressCancelMethod = "window/workDoneProgress/cancel";
++ using WorkDoneProgressCancelParamsType = WorkDoneProgressCancelParams;
++
++ // C++ types for the LSP method "workspace/didChangeConfiguration"
++ constexpr auto DidChangeConfigurationMethod = "workspace/didChangeConfiguration";
++ using DidChangeConfigurationParamsType = DidChangeConfigurationParams;
++
++ // C++ types for the LSP method "workspace/didChangeWatchedFiles"
++ constexpr auto DidChangeWatchedFilesMethod = "workspace/didChangeWatchedFiles";
++ using DidChangeWatchedFilesParamsType = DidChangeWatchedFilesParams;
++
++ // C++ types for the LSP method "workspace/didChangeWorkspaceFolders"
++ constexpr auto DidChangeWorkspaceFoldersMethod = "workspace/didChangeWorkspaceFolders";
++ using DidChangeWorkspaceFoldersParamsType = DidChangeWorkspaceFoldersParams;
++
++ // C++ types for the LSP method "workspace/didCreateFiles"
++ constexpr auto CreateFilesMethod = "workspace/didCreateFiles";
++ using CreateFilesParamsType = CreateFilesParams;
++
++ // C++ types for the LSP method "workspace/didDeleteFiles"
++ constexpr auto DeleteFilesMethod = "workspace/didDeleteFiles";
++ using DeleteFilesParamsType = DeleteFilesParams;
++
++ // C++ types for the LSP method "workspace/didRenameFiles"
++ constexpr auto RenameFilesMethod = "workspace/didRenameFiles";
++ using RenameFilesParamsType = RenameFilesParams;
++
++ } // namespace Notifications
++
++ } // namespace QLspSpecification
++
++ QT_END_NAMESPACE
++
++ #endif // QLANGUAGESERVERSPEC_P_H