File indexing completed on 2024-05-12 16:16:03

0001 /*
0002    SPDX-FileCopyrightText: 2019-2023 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "languagetoolparser.h"
0008 #include "languagetoolgrammarerror.h"
0009 
0010 #include <QJsonArray>
0011 
0012 using namespace TextGrammarCheck;
0013 
0014 LanguageToolParser::LanguageToolParser() = default;
0015 
0016 LanguageToolParser::~LanguageToolParser() = default;
0017 
0018 QVector<GrammarError> LanguageToolParser::parseResult(const QJsonObject &obj) const
0019 {
0020     QVector<GrammarError> infos;
0021     const QJsonArray array = obj.value(QLatin1String("matches")).toArray();
0022     for (const QJsonValue &current : array) {
0023         // qDebug() << " current " << current;
0024         if (current.type() == QJsonValue::Object) {
0025             const QJsonObject languageToolObject = current.toObject();
0026             LanguageToolGrammarError error;
0027             error.parse(languageToolObject, -1);
0028             if (error.isValid()) {
0029                 infos.append(error);
0030             }
0031         }
0032     }
0033     return infos;
0034 }