// Copyright (C) 2018 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include "workspace.h" namespace LanguageServerProtocol { constexpr const char WorkSpaceFolderRequest::methodName[]; constexpr const char DidChangeWorkspaceFoldersNotification::methodName[]; constexpr const char DidChangeConfigurationNotification::methodName[]; constexpr const char ConfigurationRequest::methodName[]; constexpr const char WorkspaceSymbolRequest::methodName[]; constexpr const char ExecuteCommandRequest::methodName[]; constexpr const char ApplyWorkspaceEditRequest::methodName[]; constexpr const char DidChangeWatchedFilesNotification::methodName[]; WorkSpaceFolderRequest::WorkSpaceFolderRequest() : Request(methodName, nullptr) { } DidChangeWorkspaceFoldersNotification::DidChangeWorkspaceFoldersNotification( const DidChangeWorkspaceFoldersParams ¶ms) : Notification(methodName, params) { } DidChangeConfigurationNotification::DidChangeConfigurationNotification( const DidChangeConfigurationParams ¶ms) : Notification(methodName, params) { } ConfigurationRequest::ConfigurationRequest(const ConfigurationParams ¶ms) : Request(methodName, params) { } WorkspaceSymbolRequest::WorkspaceSymbolRequest(const WorkspaceSymbolParams ¶ms) : Request(methodName, params) { } ExecuteCommandRequest::ExecuteCommandRequest(const ExecuteCommandParams ¶ms) : Request(methodName, params) { } ApplyWorkspaceEditRequest::ApplyWorkspaceEditRequest(const ApplyWorkspaceEditParams ¶ms) : Request(methodName, params) { } WorkspaceFoldersChangeEvent::WorkspaceFoldersChangeEvent() { insert(addedKey, QJsonArray()); insert(removedKey, QJsonArray()); } DidChangeWatchedFilesNotification::DidChangeWatchedFilesNotification( const DidChangeWatchedFilesParams ¶ms) : Notification(methodName, params) { } ExecuteCommandParams::ExecuteCommandParams(const Command &command) { setCommand(command.command()); if (command.arguments().has_value()) setArguments(*command.arguments()); } LanguageServerProtocol::WorkSpaceFolderResult::operator const QJsonValue() const { if (!std::holds_alternative>(*this)) return QJsonValue::Null; QJsonArray array; for (const auto &folder : std::get>(*this)) array.append(QJsonValue(folder)); return array; } } // namespace LanguageServerProtocol