]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/mode.h
Release v3.0.0 release candidate 1.
[user/henk/code/inspircd.git] / include / mode.h
index f944da62c7a0f1be90f6a37f7dc130720f9f94fb..fe02838b2fc80aef7b47d98deab905818e718cef 100644 (file)
@@ -594,35 +594,12 @@ class CoreExport ModeParser : public fakederef<ModeParser>
         */
        ModeAction TryMode(User* user, User* targu, Channel* targc, Modes::Change& mcitem, bool SkipACL);
 
-       /** Returns a list of user or channel mode characters.
-        * Used for constructing the parts of the mode list in the 004 numeric.
-        * @param mt Controls whether to list user modes or channel modes
-        * @param needparam Return modes only if they require a parameter to be set
-        * @return The available mode letters that satisfy the given conditions
-        */
-       std::string CreateModeList(ModeType mt, bool needparam = false);
-
-       /** Recreate the cached mode list that is displayed in the 004 numeric
-        * in Cached004ModeList.
-        * Called when a mode handler is added or removed.
-        */
-       void RecreateModeListFor004Numeric();
-
        /** Allocates an unused id for the given mode type, throws a ModuleException if out of ids.
         * @param mt The type of the mode to allocate the id for
         * @return The id
         */
        ModeHandler::Id AllocateModeId(ModeType mt);
 
-       /** The string representing the last set of modes to be parsed.
-        * Use GetLastParse() to get this value, to be used for  display purposes.
-        */
-       std::string LastParse;
-
-       /** Cached mode list for use in 004 numeric
-        */
-       TR1NS::array<std::string, 3> Cached004ModeList;
-
  public:
        typedef std::vector<ListModeBase*> ListModeList;
        typedef std::vector<PrefixMode*> PrefixModeList;
@@ -661,10 +638,6 @@ class CoreExport ModeParser : public fakederef<ModeParser>
        ModeParser();
        ~ModeParser();
 
-       /** Initialize all built-in modes
-        */
-       static void InitBuiltinModes();
-
        static bool IsModeChar(char chr);
 
        /** Tidy a banmask. This makes a banmask 'acceptable' if fields are left out.
@@ -681,12 +654,9 @@ class CoreExport ModeParser : public fakederef<ModeParser>
         * This method can be used on both IPV4 and IPV6 user masks.
         */
        static void CleanMask(std::string &mask);
-       /** Get the last string to be processed, as it was sent to the user or channel.
-        * Use this to display a string you just sent to be parsed, as the actual output
-        * may be different to what you sent after it has been 'cleaned up' by the parser.
-        * @return Last parsed string, as seen by users.
-        */
-       const std::string& GetLastParse() const { return LastParse; }
+
+       /** Gets the last mode change to be processed. */
+       const Modes::ChangeList& GetLastChangeList() const { return LastChangeList; }
 
        /** Add a mode to the mode parser.
         * Throws a ModuleException if the mode cannot be added.
@@ -790,14 +760,6 @@ class CoreExport ModeParser : public fakederef<ModeParser>
         */
        PrefixMode* FindPrefix(unsigned const char pfxletter);
 
-       /** Returns an array of modes:
-        * 1. User modes
-        * 2. Channel modes
-        * 3. Channel modes that require a parameter when set
-        * This is sent to users as the last part of the 004 numeric
-        */
-       const TR1NS::array<std::string, 3>& GetModeListFor004Numeric();
-
        /** Generates a list of modes, comma seperated by type:
         *  1; Listmodes EXCEPT those with a prefix
         *  2; Modes that take a param when adding or removing
@@ -835,11 +797,6 @@ class CoreExport ModeParser : public fakederef<ModeParser>
        void ShowListModeList(User* user, Channel* chan, ModeHandler* mh);
 };
 
-inline const TR1NS::array<std::string, 3>& ModeParser::GetModeListFor004Numeric()
-{
-       return Cached004ModeList;
-}
-
 inline PrefixMode* ModeHandler::IsPrefixMode()
 {
        return (this->type_id == MC_PREFIX ? static_cast<PrefixMode*>(this) : NULL);