5#ifndef QMLLINTSUGGESTIONS_P_H
6#define QMLLINTSUGGESTIONS_P_H
19#include <private/qlanguageserver_p.h>
20#include <private/qqmlcodemodelmanager_p.h>
41 void registerHandlers(QLanguageServer *server, QLanguageServerProtocol *protocol)
override;
45 struct VersionedDocument
47 std::optional<
int> version;
48 QQmlJS::Dom::DomItem item;
52 std::chrono::milliseconds time;
54 struct NoDocumentAvailable
60 VersionToDiagnose chooseVersionToDiagnose(
const QByteArray &url, UpdatePolicy policy);
61 VersionToDiagnose chooseVersionToDiagnoseHelper(
const QByteArray &url, UpdatePolicy policy);
62 void diagnoseHelper(
const QByteArray &uri,
const VersionedDocument &document);
65 QHash<QByteArray, LastLintUpdate> m_lastUpdate;
66 QLanguageServer *m_server;
67 QmlLsp::QQmlCodeModelManager *m_codeModelManager;
void registerHandlers(QLanguageServer *server, QLanguageServerProtocol *protocol) override
void setupCapabilities(QLspSpecification::ServerCapabilities &caps) 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