+ void RemoveAllPrefixes(User* user);
+
+ /** Add a prefix character to a user.
+ * Only the core should call this method, usually from
+ * within the mode parser or when the first user joins
+ * the channel (to grant ops to them)
+ * @param user The user to associate the privilage with
+ * @param prefix The prefix character to associate
+ * @param prefix_rank The rank (value) of this prefix character
+ * @param adding True if adding the prefix, false when removing
+ */
+ void SetPrefix(User* user, char prefix, unsigned int prefix_rank, bool adding);
+
+ /** Check if a user is banned on this channel
+ * @param user A user to check against the banlist
+ * @returns True if the user given is banned
+ */
+ bool IsBanned(User* user);
+
+ /** Check whether an extban of a given type matches
+ * a given user for this channel.
+ * @param u The user to match bans against
+ * @param type The type of extban to check
+ * @returns 1 = exempt, 0 = no match, -1 = banned
+ */
+ int GetExtBanStatus(User *u, char type);
+
+ /** Overloaded version to check whether a particular string is extbanned
+ * @returns 1 = exempt, 0 = no match, -1 = banned
+ */
+ int GetExtBanStatus(const std::string &str, char type);
+
+ /** Clears the cached max bans value
+ */
+ void ResetMaxBans();
+
+ /** Destructor for Channel
+ */
+ virtual ~Channel() { /* stub */ }