diff options
| author | 2013-06-18 19:17:39 +0200 | |
|---|---|---|
| committer | 2013-07-19 19:40:05 +0200 | |
| commit | 2dc01893c67fedb7b249773c43bc83b46086ee5f (patch) | |
| tree | 40a1bc5936628b98b4ae0c0c9427b44cf2cf1809 /include | |
| parent | Replace hardcoded mode letters, part 3 (diff) | |
Get rid of enum UserModes and mark User::modes as private
Diffstat (limited to 'include')
| -rw-r--r-- | include/users.h | 33 |
1 files changed, 8 insertions, 25 deletions
diff --git a/include/users.h b/include/users.h index 40ba17332..503357348 100644 --- a/include/users.h +++ b/include/users.h @@ -40,19 +40,6 @@ enum ClassTypes { CC_NAMED = 2 }; -/** RFC1459 channel modes - */ -enum UserModes { - /** +s: Server notice mask */ - UM_SNOMASK = 's' - 65, - /** +w: WALLOPS */ - UM_WALLOPS = 'w' - 65, - /** +i: Invisible */ - UM_INVISIBLE = 'i' - 65, - /** +o: Operator */ - UM_OPERATOR = 'o' - 65 -}; - /** Registration state of a user, e.g. * have they sent USER, NICK, PASS yet? */ @@ -252,6 +239,14 @@ class CoreExport User : public Extensible */ std::string cachedip; + /** The user's mode list. + * Much love to the STL for giving us an easy to use bitset, saving us RAM. + * if (modes[modeletter-65]) is set, then the mode is + * set, for example, to work out if mode +s is set, we check the field + * User::modes['s'-65] != 0. + */ + std::bitset<64> modes; + public: /** Hostname of connection. @@ -300,18 +295,6 @@ class CoreExport User : public Extensible */ std::string fullname; - /** The user's mode list. - * NOT a null terminated string. - * Also NOT an array. - * Much love to the STL for giving us an easy to use bitset, saving us RAM. - * if (modes[modeletter-65]) is set, then the mode is - * set, for example, to work out if mode +s is set, we check the field - * User::modes['s'-65] != 0. - * The following RFC characters o, w, s, i have constants defined via an - * enum, such as UM_SERVERNOTICE and UM_OPETATOR. - */ - std::bitset<64> modes; - /** What snomasks are set on this user. * This functions the same as the above modes. */ |
