1
0

Represent cItem::m_Lore as an AStringVector (#3882)

* Replace cItem::m_Lore with AStringVector

* Reword deprecation warning

* Fix lua bindings
This commit is contained in:
peterbell10
2017-08-18 11:29:54 +01:00
committed by Tiger Wang
parent 8f1ddfa6c3
commit b8dda388e0
13 changed files with 251 additions and 57 deletions

View File

@@ -228,6 +228,42 @@ AStringVector StringSplitWithQuotes(const AString & str, const AString & delim)
AString StringJoin(const AStringVector & a_Strings, const AString & a_Delimeter)
{
if (a_Strings.empty())
{
return {};
}
// Do a dry run to gather the size
const auto DelimSize = a_Delimeter.size();
size_t ResultSize = a_Strings[0].size();
std::for_each(a_Strings.begin() + 1, a_Strings.end(),
[&](const AString & a_String)
{
ResultSize += DelimSize;
ResultSize += a_String.size();
}
);
// Now do the actual join
AString Result;
Result.reserve(ResultSize);
Result.append(a_Strings[0]);
std::for_each(a_Strings.begin() + 1, a_Strings.end(),
[&](const AString & a_String)
{
Result += a_Delimeter;
Result += a_String;
}
);
return Result;
}
AStringVector StringSplitAndTrim(const AString & str, const AString & delim)
{
AStringVector results;