forked from qt-creator/qt-creator
LSP: Remove a use of QLinkedList
Task-number: QTCREATORBUG-24098 Change-Id: Ia043284fa57e74ae1ca5f2aef6c3c363b0ca0715 Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -93,15 +93,14 @@ void LspLogger::log(const LspLogMessage::MessageSender sender,
|
|||||||
const QString &clientName,
|
const QString &clientName,
|
||||||
const BaseMessage &message)
|
const BaseMessage &message)
|
||||||
{
|
{
|
||||||
QLinkedList<LspLogMessage> &clientLog = m_logs[clientName];
|
std::list<LspLogMessage> &clientLog = m_logs[clientName];
|
||||||
auto delta = clientLog.size() - m_logSize + 1;
|
for (auto delta = clientLog.size() - m_logSize + 1; delta > 0; --delta)
|
||||||
if (delta > 0)
|
clientLog.pop_front();
|
||||||
clientLog.erase(clientLog.begin(), clientLog.begin() + delta);
|
m_logs[clientName].push_back({sender, QTime::currentTime(), message});
|
||||||
m_logs[clientName].append({sender, QTime::currentTime(), message});
|
emit newMessage(clientName, m_logs[clientName].back());
|
||||||
emit newMessage(clientName, m_logs[clientName].last());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QLinkedList<LspLogMessage> LspLogger::messages(const QString &clientName) const
|
std::list<LspLogMessage> LspLogger::messages(const QString &clientName) const
|
||||||
{
|
{
|
||||||
return m_logs[clientName];
|
return m_logs[clientName];
|
||||||
}
|
}
|
||||||
|
@@ -25,12 +25,13 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <QLinkedList>
|
|
||||||
#include <QTime>
|
#include <QTime>
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
#include <languageserverprotocol/basemessage.h>
|
#include <languageserverprotocol/basemessage.h>
|
||||||
|
|
||||||
|
#include <list>
|
||||||
|
|
||||||
namespace LanguageClient {
|
namespace LanguageClient {
|
||||||
|
|
||||||
struct LspLogMessage
|
struct LspLogMessage
|
||||||
@@ -53,14 +54,14 @@ public:
|
|||||||
const QString &clientName,
|
const QString &clientName,
|
||||||
const LanguageServerProtocol::BaseMessage &message);
|
const LanguageServerProtocol::BaseMessage &message);
|
||||||
|
|
||||||
QLinkedList<LspLogMessage> messages(const QString &clientName) const;
|
std::list<LspLogMessage> messages(const QString &clientName) const;
|
||||||
QList<QString> clients() const;
|
QList<QString> clients() const;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void newMessage(const QString &clientName, const LspLogMessage &message);
|
void newMessage(const QString &clientName, const LspLogMessage &message);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QMap<QString, QLinkedList<LspLogMessage>> m_logs;
|
QMap<QString, std::list<LspLogMessage>> m_logs;
|
||||||
int m_logSize = 100; // default log size if no widget is currently visible
|
int m_logSize = 100; // default log size if no widget is currently visible
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user