]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Add a typedef for the data provider map.
authorSadie Powell <sadie@witchery.services>
Fri, 4 Dec 2020 17:43:47 +0000 (17:43 +0000)
committerSadie Powell <sadie@witchery.services>
Fri, 4 Dec 2020 18:06:42 +0000 (18:06 +0000)
include/modules.h
src/modules.cpp

index a6450547cf090ad18879ded45dd575352c49b856..c4508d81ab2dd18eb99e2c6c91bc7c97ba88786c 100644 (file)
@@ -1050,6 +1050,7 @@ class CoreExport Module : public classbase, public usecountbase
 class CoreExport ModuleManager : public fakederef<ModuleManager>
 {
  public:
+       typedef std::multimap<std::string, ServiceProvider*, irc::insensitive_swo> DataProviderMap;
        typedef std::vector<ServiceProvider*> ServiceList;
 
  private:
@@ -1092,7 +1093,7 @@ class CoreExport ModuleManager : public fakederef<ModuleManager>
        Module::List EventHandlers[I_END];
 
        /** List of data services keyed by name */
-       std::multimap<std::string, ServiceProvider*, irc::insensitive_swo> DataProviders;
+       DataProviderMap DataProviders;
 
        /** A list of ServiceProviders waiting to be registered.
         * Non-NULL when constructing a Module, NULL otherwise.
index a39fcb6c19e33d3a7623a88890a0a40f0b4f15a4..07ded820988b2f436882b823e544dfbf6707414e 100644 (file)
@@ -425,9 +425,9 @@ void ModuleManager::DoSafeUnload(Module* mod)
                user->doUnhookExtensions(items);
        }
 
-       for(std::multimap<std::string, ServiceProvider*>::iterator i = DataProviders.begin(); i != DataProviders.end(); )
+       for (DataProviderMap::iterator i = DataProviders.begin(); i != DataProviders.end(); )
        {
-               std::multimap<std::string, ServiceProvider*>::iterator curr = i++;
+               DataProviderMap::iterator curr = i++;
                if (curr->second->creator == mod)
                {
                        DataProviders.erase(curr);
@@ -642,7 +642,7 @@ ServiceProvider* ModuleManager::FindService(ServiceType type, const std::string&
                case SERVICE_DATA:
                case SERVICE_IOHOOK:
                {
-                       std::multimap<std::string, ServiceProvider*>::iterator i = DataProviders.find(name);
+                       DataProviderMap::iterator i = DataProviders.find(name);
                        if (i != DataProviders.end() && i->second->service == type)
                                return i->second;
                        return NULL;
@@ -696,7 +696,7 @@ void dynamic_reference_base::resolve()
 {
        // Because find() may return any element with a matching key in case count(key) > 1 use lower_bound()
        // to ensure a dynref with the same name as another one resolves to the same object
-       std::multimap<std::string, ServiceProvider*>::iterator i = ServerInstance->Modules.DataProviders.lower_bound(name);
+       ModuleManager::DataProviderMap::iterator i = ServerInstance->Modules.DataProviders.lower_bound(name);
        if ((i != ServerInstance->Modules.DataProviders.end()) && (i->first == this->name))
        {
                ServiceProvider* newvalue = i->second;
@@ -729,7 +729,7 @@ void ModuleManager::AddReferent(const std::string& name, ServiceProvider* servic
 
 void ModuleManager::DelReferent(ServiceProvider* service)
 {
-       for (std::multimap<std::string, ServiceProvider*>::iterator i = DataProviders.begin(); i != DataProviders.end(); )
+       for (DataProviderMap::iterator i = DataProviders.begin(); i != DataProviders.end(); )
        {
                ServiceProvider* curr = i->second;
                if (curr == service)