Refactor out helper function Utils::String::unquote

Remove redundant include
This commit is contained in:
Chocobo1 2017-05-24 23:24:48 +08:00 committed by sledgehammer999
commit 83dd0ae86e
No known key found for this signature in database
GPG key ID: 6E4A2D025B7CC9A2

View file

@ -30,10 +30,10 @@
#ifndef UTILS_STRING_H
#define UTILS_STRING_H
#include <string>
#include <QString>
class QByteArray;
class QString;
class QLatin1String;
namespace Utils
{
@ -51,6 +51,19 @@ namespace Utils
bool naturalCompareCaseSensitive(const QString &left, const QString &right);
bool naturalCompareCaseInsensitive(const QString &left, const QString &right);
template <typename T>
T unquote(const T &str, const QString &quotes = QLatin1String("\""))
{
if (str.length() < 2) return str;
for (auto const quote : quotes) {
if (str.startsWith(quote) && str.endsWith(quote))
return str.mid(1, str.length() - 2);
}
return str;
}
}
}