File: OverridableMethod.h

package info (click to toggle)
asymptote 3.02%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 33,400 kB
  • sloc: cpp: 172,516; ansic: 69,728; python: 14,967; sh: 5,599; javascript: 4,866; lisp: 1,507; perl: 1,417; makefile: 1,028; yacc: 610; lex: 449; xml: 182; asm: 8
file content (34 lines) | stat: -rw-r--r-- 978 bytes parent folder | download | duplicates (2)
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
#pragma once

#include "LibLsp/JsonRpc/serializer.h"
#include <string>
struct OverridableMethod
{
    std::string bindingKey;
    std::string name;
    std::vector<std::string> parameters;
    bool unimplemented = false;
    std::string declaringClass;
    std::string declaringClassType;

    void swap(OverridableMethod& arg) noexcept
    {
        bindingKey.swap(arg.bindingKey);
        name.swap(arg.name);
        parameters.swap(arg.parameters);
        declaringClass.swap(arg.declaringClass);
        declaringClassType.swap(arg.declaringClassType);
        std::swap(unimplemented, arg.unimplemented);
    }
};
MAKE_REFLECT_STRUCT(OverridableMethod, bindingKey, name, parameters, unimplemented, declaringClass, declaringClassType);

struct OverridableMethodsResponse
{
    std::string type;
    std::vector<OverridableMethod> methods;

    MAKE_SWAP_METHOD(OverridableMethodsResponse, type, methods)
};

MAKE_REFLECT_STRUCT(OverridableMethodsResponse, type, methods)