X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fcore%2Ftyperegistry.h;h=dd5dc01ba2e1e96db0e9056d7d5a9202669814cb;hp=27610859c75105d4b774e2d4a8e44493cb415d67;hb=f24e7b96e76b63c9b9b8a6bce4c7a9db64276ea8;hpb=9f754b788b872f9768af8c3a4f9e001a588e011a diff --git a/source/core/typeregistry.h b/source/core/typeregistry.h index 2761085..dd5dc01 100644 --- a/source/core/typeregistry.h +++ b/source/core/typeregistry.h @@ -43,9 +43,7 @@ private: virtual void invoke(T arg) const { action(this->keyword, arg); } }; - typedef std::map TypeMap; - - TypeMap types; + std::map types; public: ~TypeRegistry(); @@ -65,8 +63,8 @@ public: template class A, typename T> TypeRegistry::~TypeRegistry() { - for(typename TypeMap::iterator i=types.begin(); i!=types.end(); ++i) - delete i->second; + for(auto &kvp: types) + delete kvp.second; } template class A, typename T> @@ -88,8 +86,8 @@ void TypeRegistry::invoke(const std::string &kw, T arg) const template class A, typename T> void TypeRegistry::invoke_all(T arg) const { - for(typename TypeMap::const_iterator i=types.begin(); i!=types.end(); ++i) - i->second->invoke(arg); + for(auto &kvp: types) + kvp.second->invoke(arg); } } // namespace Msp