]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/mode.h
Convert ModeHandler::GetNumParams() to NeedsParam() that returns a bool
[user/henk/code/inspircd.git] / include / mode.h
index eebfbedd61f4fd1b447afecd5a188d276d3c2a77..64829845f805c503979f912901c241b9a6d242de 100644 (file)
@@ -168,6 +168,11 @@ class CoreExport ModeHandler : public ServiceProvider
        ModeHandler(Module* me, const std::string& name, char modeletter, ParamSpec params, ModeType type, Class mclass = MC_OTHER);
        virtual CullResult cull();
        virtual ~ModeHandler();
+
+       /** Register this object in the ModeParser
+        */
+       void RegisterService() CXX11_OVERRIDE;
+
        /**
         * Returns true if the mode is a list mode
         */
@@ -200,12 +205,11 @@ class CoreExport ModeHandler : public ServiceProvider
         */
        inline bool NeedsOper() const { return oper; }
        /**
-        * Returns the number of parameters for the mode. Any non-zero
-        * value should be considered to be equivalent to one.
-        * @param adding If this is true, the number of parameters required to set the mode should be returned, otherwise the number of parameters required to unset the mode shall be returned.
-        * @return The number of parameters the mode expects
+        * Check if the mode needs a parameter for adding or removing
+        * @param adding True to check if the mode needs a parameter when setting, false to check if the mode needs a parameter when unsetting
+        * @return True if the mode needs a parameter for the specified action, false if it doesn't
         */
-       int GetNumParams(bool adding);
+       bool NeedsParam(bool adding) const;
        /**
         * Returns the mode character this handler handles.
         * @return The mode character
@@ -769,10 +773,10 @@ class CoreExport ModeParser : public fakederef<ModeParser>
        const ModeHandlerMap& GetModes(ModeType mt) const { return modehandlersbyname[mt]; }
 
        /** Show the list of a list mode to a user. Modules can deny the listing.
-     * @param user User to show the list to.
-     * @param chan Channel to show the list of.
-     * @param mh List mode to show the list of.
-     */
+        * @param user User to show the list to.
+        * @param chan Channel to show the list of.
+        * @param mh List mode to show the list of.
+        */
        void ShowListModeList(User* user, Channel* chan, ModeHandler* mh);
 };