/** Items stored in the channel's list
*/
- typedef std::list<ListItem> ModeList;
+ typedef std::vector<ListItem> ModeList;
private:
class ChanData
* this mode from the channel.
* See mode.h for more details.
* @param channel The channel to remove all instances of the mode from
- * @param stack The mode stack to add the mode change to
+ * @param changelist Mode change list to populate with the removal of this mode
*/
- virtual void RemoveMode(Channel* channel, irc::modestacker& stack);
+ virtual void RemoveMode(Channel* channel, Modes::ChangeList& changelist);
/** Perform a rehash of this mode's configuration data
*/
- virtual void DoRehash();
+ void DoRehash();
/** Handle the list mode.
* See mode.h
*/
virtual ModeAction OnModeChange(User* source, User*, Channel* channel, std::string ¶meter, bool adding);
- /** Syncronize channel item list with another server.
- * See modules.h
- * @param chan Channel to syncronize
- * @param proto Protocol module pointer
- * @param opaque Opaque connection handle
- */
- virtual void DoSyncChannel(Channel* chan, Module* proto, void* opaque);
-
/** Validate parameters.
* Overridden by implementing module.
* @param user Source user adding the parameter