1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd: (C) 2002-2010 InspIRCd Development Team
6 * See: http://wiki.inspircd.org/Credits
8 * This program is free but copyrighted software; see
9 * the file COPYING for details.
11 * ---------------------------------------------------
17 void CullList::Apply()
19 std::set<classbase*> gone;
20 std::vector<classbase*> queue;
21 queue.reserve(list.size() + 32);
22 for(unsigned int i=0; i < list.size(); i++)
24 classbase* c = list[i];
25 if (gone.insert(c).second)
27 ServerInstance->Logs->Log("CULLLIST", DEBUG, "Deleting %s @%p", typeid(*c).name(),
34 ServerInstance->Logs->Log("CULLLIST",DEBUG, "WARNING: Object @%p culled twice!",
39 for(unsigned int i=0; i < queue.size(); i++)
41 classbase* c = queue[i];
46 ServerInstance->Logs->Log("CULLLIST",DEBUG, "WARNING: Objects added to cull list in a destructor");
51 void ActionList::Run()
53 for(unsigned int i=0; i < list.size(); i++)