Chatterino
ChatterSet.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <QString>
4 #include <functional>
5 #include <set>
6 #include <unordered_map>
7 #include <unordered_set>
8 #include "lrucache/lrucache.hpp"
9 #include "util/QStringHash.hpp"
10 
11 namespace chatterino {
12 
16 {
17 public:
19  static constexpr size_t chatterLimit = 2000;
20 
21  ChatterSet();
22 
25  void addRecentChatter(const QString &userName);
26 
30  const std::unordered_set<QString> &lowerCaseUsernames);
31 
33  bool contains(const QString &userName) const;
34 
37  std::vector<QString> filterByPrefix(const QString &prefix) const;
38 
39 private:
40  // user name in lower case -> user name in normal case
42 };
43 
45 
46 } // namespace chatterino
std::vector< QString > filterByPrefix(const QString &prefix) const
Definition: ChatterSet.cpp:44
static constexpr size_t chatterLimit
The limit of how many chatters can be saved for a channel.
Definition: ChatterSet.hpp:19
Definition: ChatterSet.hpp:15
void updateOnlineChatters(const std::unordered_set< QString > &lowerCaseUsernames)
Definition: ChatterSet.cpp:18
bool contains(const QString &userName) const
Checks if a username is in the list.
Definition: ChatterSet.cpp:39
Definition: Application.cpp:48
ChatterSet()
Definition: ChatterSet.cpp:8
void addRecentChatter(const QString &userName)
Definition: ChatterSet.cpp:13