summaryrefslogtreecommitdiff
path: root/graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/onTypeFormatting.h
blob: df14ea5d3dd2e71df3a229c95a0ea33c4d617ad1 (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
42
43
44
#pragma once


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

#include "LibLsp/lsp/lsFormattingOptions.h"
#include "LibLsp/lsp/lsTextDocumentIdentifier.h"
#include "LibLsp/lsp/lsRange.h"
#include "LibLsp/lsp/lsTextEdit.h"


struct lsDocumentOnTypeFormattingParams
{
  lsTextDocumentIdentifier textDocument;
  lsFormattingOptions options;

  lsPosition position;

	 /**
	  * The character that has been typed.
	  */

  std::string ch;

  MAKE_SWAP_METHOD(lsDocumentOnTypeFormattingParams,
	  textDocument,
	  position,
	  options, ch);
};
MAKE_REFLECT_STRUCT(lsDocumentOnTypeFormattingParams,
                    textDocument,
					position,
                    options,ch);

/**
 * The document range formatting request is sent from the client to the
 * server to format a given range in a document.
 *
 * Registration Options: TextDocumentRegistrationOptions
 */
DEFINE_REQUEST_RESPONSE_TYPE(td_onTypeFormatting,
	lsDocumentOnTypeFormattingParams, std::vector<lsTextEdit>, "textDocument/onTypeFormatting");