5#ifndef QMLLINTSUGGESTIONS_P_H
6#define QMLLINTSUGGESTIONS_P_H
19#include <private/qlanguageserver_p.h>
20#include <private/qqmlcodemodelmanager_p.h>
39 QString name()
const override {
return QLatin1StringView(
"QmlLint Suggestions"); }
42 void registerHandlers(QLanguageServer *server, QLanguageServerProtocol *protocol)
override;
44 QLspSpecification::InitializeResult &)
override;
47 struct VersionedDocument
49 std::optional<
int> version;
50 QQmlJS::Dom::DomItem item;
54 std::chrono::milliseconds time;
56 struct NoDocumentAvailable
62 VersionToDiagnose chooseVersionToDiagnose(
const QByteArray &url, UpdatePolicy policy);
63 VersionToDiagnose chooseVersionToDiagnoseHelper(
const QByteArray &url, UpdatePolicy policy);
64 void diagnoseHelper(
const QByteArray &uri,
const VersionedDocument &document);
67 QHash<QByteArray, LastLintUpdate> m_lastUpdate;
68 QLanguageServer *m_server;
69 QmlLsp::QQmlCodeModelManager *m_codeModelManager;
void setupCapabilities(const QLspSpecification::InitializeParams &clientInfo, QLspSpecification::InitializeResult &) override
void registerHandlers(QLanguageServer *server, QLanguageServerProtocol *protocol) override
QString name() const override
Combined button and popup list for selecting options.
static Diagnostic messageToDiagnostic_helper(AdvanceFunc advancePositionPastLocation, std::optional< int > version, const Message &message)
static Diagnostic createMissingBuildDirDiagnostic()
static bool isSnapshotNew(std::optional< int > snapshotVersion, std::optional< int > processedVersion, QmlLsp::UpdatePolicy policy)
static void codeActionHandler(const QByteArray &, const CodeActionParams ¶ms, LSPPartialResponse< std::variant< QList< std::variant< Command, CodeAction > >, std::nullptr_t >, QList< std::variant< Command, CodeAction > > > &&response)
static void advancePositionPastLocation_helper(const QString &fileContents, const QQmlJS::SourceLocation &location, Position &position)
static DiagnosticSeverity severityFromMsgType(QtMsgType t)
std::optional< std::chrono::steady_clock::time_point > invalidUpdatesSince
std::optional< int > version