summaryrefslogtreecommitdiffstats
path: root/src/Util.hpp
blob: f90e108e106aa30f54b928fa1187ae70d39383bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include <QString>
#include <QMap>

namespace Util {
    static const QMap<QChar, QChar> unescapeChars {
        {'n', '\n'},
    };

    QString trimQuotes(QString string, bool& trimmed);
    QString unescape(const QString& string, const QChar escapeChar = '\\');
    QString escape(const QString& string, const QChar escapeChar = '\\', const QString& escapeChars = "");
    QString joinEscape(const QStringList& list, const QChar joinChar, const QChar escapeChar = '\\');
    QStringList splitEscaped(const QString& joined, const QChar splitChar, const QChar escapeChar = '\\');
    QString& unescapeClonkString(QString&& string);
    int indexOfEscaped(const QString& string, const QChar subject, int startPos = 0, const QChar escapeChar = '\\');
}