00001 #ifndef Impala_Util_Traits_h 00002 #define Impala_Util_Traits_h 00003 00004 namespace Impala 00005 { 00006 namespace Util 00007 { 00008 00009 template<class T> 00010 class Deletor 00011 { 00012 public: 00013 void 00014 operator() (T arg) 00015 { 00016 delete arg; 00017 } 00018 }; 00019 00020 template<class T> 00021 class Nop 00022 { 00023 public: 00024 void 00025 operator() (T arg) 00026 { 00027 } 00028 }; 00029 00030 } // namespace Util 00031 } // namespace Impala 00032 00033 #endif