diff options
Diffstat (limited to 'BuildTools')
-rw-r--r-- | BuildTools/EmojisGenerator/EmojiMapper.cpp | 17 |
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 { |