Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qlanguageserver_p.h
Go to the documentation of this file.
1
// Copyright (C) 2021 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QLANGUAGESERVER_P_H
6
#
define
QLANGUAGESERVER_P_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists purely as an
13
// implementation detail. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
<
QtLanguageServer
/
private
/
qlanguageserverspec_p
.
h
>
20
#
include
<
QtLanguageServer
/
private
/
qlanguageserverprotocol_p
.
h
>
21
#
include
<
QtLanguageServer
/
private
/
qlspnotifysignals_p
.
h
>
22
#
include
<
QtCore
/
qloggingcategory
.
h
>
23
24
QT_BEGIN_NAMESPACE
25
26
class
QLanguageServer;
27
class
QLanguageServerPrivate
;
28
Q_DECLARE_LOGGING_CATEGORY(lspServerLog)
29
30
class
QLanguageServerModule
:
public
QObject
31
{
32
Q_OBJECT
33
public
:
34
QLanguageServerModule
(
QObject
*
parent
=
nullptr
) :
QObject
(
parent
) { }
35
virtual
void
registerHandlers
(
QLanguageServer
*
server
,
QLanguageServerProtocol
*
protocol
) = 0;
36
virtual
void
setupCapabilities
(QLspSpecification::ServerCapabilities &) = 0;
37
};
38
39
class
QLanguageServer
:
public
QObject
40
{
41
Q_OBJECT
42
public
:
43
QLanguageServer
(
const
QJsonRpcTransport
::
DataHandler
&
h
,
QObject
*
parent
=
nullptr
);
44
enum
class
RunStatus
{
45
NotInitialized
,
46
Initialized
,
// normal state of execution
47
Stopping
,
48
WaitingForExit
,
49
Stopped
50
};
51
Q_ENUM
(
RunStatus
)
52
53
QLanguageServerProtocol
*
protocol
();
54
void
registerHandlers
(QLanguageServerProtocol *protocol);
55
void
registerModule
(
QLanguageServerModule
*serverModule);
56
QLspNotifySignals
*
notifySignals
();
57
58
// API
59
RunStatus
runStatus
()
const
;
60
const
QLspSpecification
::
InitializeParams
&
clientInfo
()
const
;
61
62
public
Q_SLOTS
:
63
void
receiveData
(
const
QByteArray
&
d
,
bool
isEndOfMessage
);
64
Q_SIGNALS
:
65
void
clientInitialized
(
QLanguageServer
*
server
);
66
void
exit
();
67
void
lifecycleError
();
68
void
readNextMessage
();
69
70
private
:
71
void
registerMethods(QJsonRpc::TypedRpc &typedRpc);
72
void
executeShutdown();
73
Q_DECLARE_PRIVATE
(
QLanguageServer
)
74
};
75
76
QT_END_NAMESPACE
77
78
#
endif
// QLANGUAGESERVER_P_H
QLanguageServerModule
Definition
qlanguageserver_p.h:31
QLanguageServerModule::setupCapabilities
virtual void setupCapabilities(QLspSpecification::ServerCapabilities &)=0
QLanguageServerPrivate
Definition
qlanguageserver_p_p.h:37
QLanguageServer
Implements a server for the language server protocol.
Definition
qlanguageserver_p.h:40
QLanguageServer::registerHandlers
void registerHandlers(QLanguageServerProtocol *protocol)
Definition
qlanguageserver.cpp:150
QLanguageServer::clientInfo
const QLspSpecification::InitializeParams & clientInfo() const
Definition
qlanguageserver.cpp:130
QLanguageServer::RunStatus
RunStatus
Definition
qlanguageserver_p.h:44
QLanguageServer::RunStatus::Initialized
@ Initialized
Definition
qlanguageserver_p.h:46
QLanguageServer::RunStatus::Stopping
@ Stopping
Definition
qlanguageserver_p.h:47
QLanguageServer::RunStatus::NotInitialized
@ NotInitialized
Definition
qlanguageserver_p.h:45
QLanguageServer::RunStatus::WaitingForExit
@ WaitingForExit
Definition
qlanguageserver_p.h:48
QLanguageServer::RunStatus::Stopped
@ Stopped
Definition
qlanguageserver_p.h:49
QLanguageServer::lifecycleError
void lifecycleError()
QLanguageServer::registerModule
void registerModule(QLanguageServerModule *serverModule)
Definition
qlanguageserver.cpp:61
QLanguageServer::notifySignals
QLspNotifySignals * notifySignals()
Definition
qlanguageserver.cpp:69
QLanguageServer::runStatus
RunStatus runStatus() const
Definition
qlanguageserver.cpp:54
QLanguageServer::readNextMessage
void readNextMessage()
QLanguageServer::exit
void exit()
QQmlFindUsagesSupport
Definition
qqmlfindusagessupport_p.h:29
QQmlFindUsagesSupport::typeDefinitionRequestHandler
void typeDefinitionRequestHandler(const QByteArray &, const QLspSpecification::TypeDefinitionParams ¶ms, ReferencesRequest::Response &&response)
QQmlFindUsagesSupport::registerHandlers
void registerHandlers(QLanguageServer *server, QLanguageServerProtocol *protocol) override
Definition
qqmlfindusagessupport.cpp:29
QQmlFindUsagesSupport::process
void process(RequestPointerArgument request) override
Definition
qqmlfindusagessupport.cpp:34
QQmlFindUsagesSupport::setupCapabilities
void setupCapabilities(QLspSpecification::ServerCapabilities &caps) override
Definition
qqmlfindusagessupport.cpp:21
QmlLsp::QQmlCodeModelManager
Definition
qqmlcodemodelmanager_p.h:44
QQmlLSUtils
Definition
qqmllsutils_p.h:31
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
QmlLsp
Definition
qmllsmain.cpp:50
QQmlLSUtils::ItemLocation
Definition
qqmllsutils_p.h:34
ResponseScopeGuard
This class sends a result or an error when going out of scope.
Definition
qqmlbasemodule_p.h:56
qtdeclarative
src
qmlls
qlanguageserver_p.h
Generated on
for Qt by
1.18.0