summaryrefslogtreecommitdiff
path: root/graphics/asymptote/LspCpp/include/LibLsp/lsp/client/unregisterCapability.h
blob: aa51d7efeee97081aa516d73443b518fccf2a796 (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
37
38
39
40
41
#pragma once

#include "LibLsp/lsp/lsDocumentUri.h"

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

/**
 * General parameters to unregister a capability.
 */

struct Unregistration {
	/**
	 * The id used to unregister the request or notification. Usually an id
	 * provided during the register request.
	 */

	std::string id;

	/**
	 * The method / capability to unregister for.
	 */

	std::string method;
	
	MAKE_SWAP_METHOD(Unregistration, id, method);
};
MAKE_REFLECT_STRUCT(Unregistration, id, method);
/**
 * The client/unregisterCapability request is sent from the server to the client to unregister
 * a previously registered capability.
 */
struct UnregistrationParams
{
	std::vector<Unregistration> unregisterations;
	MAKE_SWAP_METHOD(UnregistrationParams, unregisterations);
};

MAKE_REFLECT_STRUCT(UnregistrationParams, unregisterations);

DEFINE_REQUEST_RESPONSE_TYPE(Req_ClientUnregisterCapability, UnregistrationParams,JsonNull, "client/unregisterCapability");