#ifndef EMOJIS_H #define EMOJIS_H #include #include #include #include #include "concurrentmap.h" #include "lazyloadedimage.h" class Emojis { public: static void parseEmojis( std::vector> &vector, const QString &text); static void loadEmojis(); static QString replaceShortCodes(const QString &text); struct EmojiData { QString value; QString code; }; private: static QRegularExpression *findShortCodesRegex; static QMap *shortCodeToEmoji; static QMap *emojiToShortCode; static QMap> *firstEmojiChars; static ConcurrentMap *imageCache; Emojis() { } }; #endif // EMOJIS_H