summaryrefslogtreecommitdiff
path: root/graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/checkHashCodeEqualsStatus.h
blob: 88731c29b58857f1bf25baf4f086166745cfa656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#pragma once

#include "LibLsp/JsonRpc/RequestInMessage.h"
#include "LibLsp/JsonRpc/lsResponseMessage.h"

#include <LibLsp/lsp/lsCodeAction.h>

#include "LibLsp/lsp/CodeActionParams.h"

struct LspVariableBinding {
        std::string bindingKey;
        std::string name;
        std::string type;
        bool isField;
        void swap(LspVariableBinding& arg) noexcept
        {
                bindingKey.swap(arg.bindingKey);
                name.swap(arg.name);
                type.swap(arg.type);
                std::swap(isField, arg.isField);
        }
};
MAKE_REFLECT_STRUCT(LspVariableBinding, bindingKey, name, type, isField)

struct CheckHashCodeEqualsResponse {
         std::string type;
         std::vector<LspVariableBinding>  fields;
         std::vector<std::string> existingMethods;
         MAKE_SWAP_METHOD(CheckHashCodeEqualsResponse, type, fields, type, existingMethods)
};
MAKE_REFLECT_STRUCT(CheckHashCodeEqualsResponse, type, fields, type, existingMethods)

DEFINE_REQUEST_RESPONSE_TYPE(java_checkHashCodeEqualsStatus,
        lsCodeActionParams, CheckHashCodeEqualsResponse, "java/checkHashCodeEqualsStatus")