forked from qt-creator/qt-creator
Meson: Flatten directory hierarchy
Keep tests/ and icons/ but put the rest into the toplevel. The previous setup was so different from the rest of the bunch that it regularly stuck out in maintenance tasks. Change-Id: I69821be6268f69682353a388f6bb1fa343215303 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
43
src/plugins/mesonprojectmanager/mesonoutputparser.h
Normal file
43
src/plugins/mesonprojectmanager/mesonoutputparser.h
Normal file
@@ -0,0 +1,43 @@
|
||||
// Copyright (C) 2020 Alexis Jeandet.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <projectexplorer/ioutputparser.h>
|
||||
|
||||
#include <utils/outputformatter.h>
|
||||
|
||||
#include <QRegularExpression>
|
||||
|
||||
#include <array>
|
||||
|
||||
namespace MesonProjectManager {
|
||||
namespace Internal {
|
||||
|
||||
class MesonOutputParser final : public ProjectExplorer::OutputTaskParser
|
||||
{
|
||||
Q_OBJECT
|
||||
const QRegularExpression m_errorFileLocRegex{R"((^.*meson.build):(\d+):(\d+): ERROR)"};
|
||||
const QRegularExpression m_errorOptionRegex{R"!(ERROR: Value)!"};
|
||||
int m_remainingLines = 0;
|
||||
QStringList m_pending;
|
||||
void pushLine(const QString &line);
|
||||
Result processErrors(const QString &line);
|
||||
Result processWarnings(const QString &line);
|
||||
void addTask(ProjectExplorer::Task::TaskType type, const QString &line);
|
||||
void addTask(ProjectExplorer::Task task);
|
||||
Utils::OutputLineParser::LinkSpecs addTask(ProjectExplorer::Task::TaskType type,
|
||||
const QString &line,
|
||||
const QRegularExpressionMatch &match,
|
||||
int fileCapIndex,
|
||||
int lineNumberCapIndex);
|
||||
|
||||
public:
|
||||
MesonOutputParser();
|
||||
Result handleLine(const QString &line, Utils::OutputFormat type) override;
|
||||
void readStdo(const QByteArray &data);
|
||||
void setSourceDirectory(const Utils::FilePath &sourceDir);
|
||||
};
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace MesonProjectManager
|
||||
Reference in New Issue
Block a user