diff options
Diffstat (limited to 'src/discord/discord.hpp')
-rw-r--r-- | src/discord/discord.hpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/discord/discord.hpp b/src/discord/discord.hpp index ebbf5f9..cb14a52 100644 --- a/src/discord/discord.hpp +++ b/src/discord/discord.hpp @@ -18,7 +18,7 @@ #include <queue> #ifdef GetMessage - #undef GetMessage +#undef GetMessage #endif class Abaddon; @@ -55,6 +55,7 @@ public: std::optional<GuildData> GetGuild(Snowflake id) const; std::optional<GuildMember> GetMember(Snowflake user_id, Snowflake guild_id) const; Snowflake GetMemberHoistedRole(Snowflake guild_id, Snowflake user_id, bool with_color = false) const; + std::optional<RoleData> GetMemberHoistedRoleCached(const GuildMember &member, const std::unordered_map<Snowflake, RoleData> &roles, bool with_color = false) const; std::optional<RoleData> GetMemberHighestRole(Snowflake guild_id, Snowflake user_id) const; std::set<Snowflake> GetUsersInGuild(Snowflake id) const; std::set<Snowflake> GetChannelsInGuild(Snowflake id) const; @@ -162,6 +163,11 @@ public: }); } + template<typename Iter> + std::vector<UserData> GetUsersBulk(Iter begin, Iter end) { + return m_store.GetUsersBulk(begin, end); + } + // FetchGuildBans fetches all bans+reasons via api, this func fetches stored bans (so usually just GUILD_BAN_ADD data) std::vector<BanData> GetBansInGuild(Snowflake guild_id); void FetchGuildBan(Snowflake guild_id, Snowflake user_id, const sigc::slot<void(BanData)> &callback); |