File: configuration.h

package info (click to toggle)
asymptote 2.85%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 43,264 kB
  • sloc: cpp: 210,491; ansic: 98,376; python: 14,568; javascript: 6,629; sh: 4,301; perl: 1,566; lisp: 1,505; makefile: 764; yacc: 554; lex: 446; xml: 182; objc: 177
file content (37 lines) | stat: -rw-r--r-- 1,239 bytes parent folder | download
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
#pragma once

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

#include "LibLsp/lsp/lsDocumentUri.h"


struct ConfigurationItem {
        /**
         * The scope to get the configuration section for.
         */
        lsDocumentUri scopeUri;

        /**
         * The configuration section asked for.
         */
        std::string section;
        MAKE_SWAP_METHOD(ConfigurationItem, scopeUri, section);
};
MAKE_REFLECT_STRUCT(ConfigurationItem, scopeUri, section);
struct ConfigurationParams
{
        std::vector<ConfigurationItem> items;
        MAKE_SWAP_METHOD(ConfigurationParams, items)
};

MAKE_REFLECT_STRUCT(ConfigurationParams, items);

/**
 * The workspace/configuration request is sent from the server to the client to fetch
 * configuration settings from the client. The request can fetch n configuration settings
 * in one roundtrip. The order of the returned configuration settings correspond to the
 * order of the passed ConfigurationItems (e.g. the first item in the response is the
 * result for the first configuration item in the params).
 */
DEFINE_REQUEST_RESPONSE_TYPE(WorkspaceConfiguration, ConfigurationParams,std::vector<lsp::Any>, "workspace/configuration");