]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - libs/instancelib.h
Embrace lambdas
[xonotic/netradiant.git] / libs / instancelib.h
index 913288b6a9b127b90566412d78f96f3f13ad5c70..eeb95e23579860c11f73088ff9e2bcde3b40c610 100644 (file)
@@ -153,21 +153,14 @@ inline void InstanceSet_forEach( InstanceSet& instances, const Functor& functor
        }
 }
 
-template<typename Type>
-class InstanceEvaluateTransform
-{
-public:
-inline void operator()( scene::Instance& instance ) const {
-       InstanceTypeCast<Type>::cast( instance )->evaluateTransform();
-}
-};
-
 template<typename Type>
 class InstanceSetEvaluateTransform
 {
 public:
 static void apply( InstanceSet& instances ){
-       InstanceSet_forEach( instances, InstanceEvaluateTransform<Type>() );
+       InstanceSet_forEach(instances, [&](scene::Instance &instance) {
+               InstanceTypeCast<Type>::cast(instance)->evaluateTransform();
+       });
 }
 typedef ReferenceCaller<InstanceSet, &InstanceSetEvaluateTransform<Type>::apply> Caller;
 };