summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'BuildTools')
-rw-r--r--BuildTools/EmojisGenerator/EmojiMapper.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/BuildTools/EmojisGenerator/EmojiMapper.cpp b/BuildTools/EmojisGenerator/EmojiMapper.cpp
index b93a191..097ddcc 100644
--- a/BuildTools/EmojisGenerator/EmojiMapper.cpp
+++ b/BuildTools/EmojisGenerator/EmojiMapper.cpp
@@ -1,50 +1,63 @@
/*
* Copyright (c) 2016-2017 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <SwifTools/EmojiMapper.h>
+#include <algorithm>
#include <string>
#include <unordered_map>
namespace Swift {
//AUTO-GENERATED CONTENT
<%= mapping %>
std::vector<std::string> EmojiMapper::getCategories() {
- std::vector<std::string> categories;
+ std::vector<std::string> categories = {
+ "people",
+ "nature",
+ "food",
+ "activity",
+ "travel",
+ "objects",
+ "symbols",
+ "flags"
+ };
+
for (const auto& keyValuePair : emojisInCategory) {
- categories.push_back(keyValuePair.first);
+ if (std::find(std::begin(categories), std::end(categories), keyValuePair.first) == std::end(categories)) {
+ categories.push_back(keyValuePair.first);
+ }
}
return categories;
}
std::string EmojiMapper::shortnameToUnicode(const std::string& shortname) {
auto unicodeSequenceIterator = shortnameUnicode.find(shortname);
if (unicodeSequenceIterator != shortnameUnicode.end()) {
return unicodeSequenceIterator->second;
}
else {
return std::string();
}
}
std::string EmojiMapper::unicodeToShortname(const std::string& unicode) {
auto shortnameIterator = unicodeShortname.find(unicode);
if (shortnameIterator != unicodeShortname.end()) {
return shortnameIterator->second;
}
else {
return std::string();
}
}
std::vector<std::string> EmojiMapper::categoryNameToEmojis(const std::string& categoryName) {
auto emojiIterator = emojisInCategory.find(categoryName);
if (emojiIterator != emojisInCategory.end()) {
return emojiIterator->second;
}
else {