DEFINE_HANDLER1(IsIdentHandler, bool, const char*);
DEFINE_HANDLER1(FindDescriptorHandler, User*, int);
DEFINE_HANDLER1(FloodQuitUserHandler, void, User*);
+DEFINE_HANDLER1(IsChannelHandler, bool, const char*);
+DEFINE_HANDLER1(IsSIDHandler, bool, const std::string&);
+DEFINE_HANDLER1(RehashHandler, void, const std::string&);
/* Forward declaration - required */
class XLineManager;
IsIdentHandler HandleIsIdent;
FindDescriptorHandler HandleFindDescriptor;
FloodQuitUserHandler HandleFloodQuitUser;
+ IsChannelHandler HandleIsChannel;
+ IsSIDHandler HandleIsSID;
+ RehashHandler HandleRehash;
/** BufferedSocket classes pending deletion after being closed.
* We don't delete these immediately as this may cause a segmentation fault.
* @param chname A channel name to verify
* @return True if the name is valid
*/
- bool IsChannel(const char *chname);
+ caller1<bool, const char*> IsChannel;
/** Return true if str looks like a server ID
* @param string to check against
*/
- bool IsSID(const std::string &str);
+ caller1<bool, const std::string&> IsSID;
/** Rehash the local server
*/
- void Rehash();
+ caller1<void, const std::string&> Rehash;
/** Handles incoming signals after being set
* @param signal the signal recieved
* @param pcnt The number of items you have given in the first parameter
* @param user The user to send error messages to
*/
- void SendMode(const char* const* parameters, int pcnt, User *user);
+ void SendMode(const std::vector<std::string>& parameters, User *user);
/** Match two strings using pattern matching.
* This operates identically to the global function match(),
* @param user The user to execute the command as
* @return True if the command handler was called successfully
*/
- CmdResult CallCommandHandler(const std::string &commandname, const char* const* parameters, int pcnt, User* user);
+ CmdResult CallCommandHandler(const std::string &commandname, const std::vector<std::string>& parameters, User* user);
/** Return true if the command is a module-implemented command and the given parameters are valid for it
* @param parameters The mode parameters