00001
00016
00017 #ifndef NET_INSTAWEB_UTIL_PUBLIC_POOL_ELEMENT_H_
00018 #define NET_INSTAWEB_UTIL_PUBLIC_POOL_ELEMENT_H_
00019
00020 #include <list>
00021
00028 namespace net_instaweb {
00029
00030 template<class T>
00031 class PoolElement {
00032 public:
00033 typedef typename std::list<T*>::iterator Position;
00034
00035 PoolElement() { }
00036
00039 Position* pool_position() { return &pool_position_; }
00040
00041 private:
00042 Position pool_position_;
00043
00044 DISALLOW_COPY_AND_ASSIGN(PoolElement);
00045 };
00046
00047 }
00048
00049 #endif ///< NET_INSTAWEB_UTIL_PUBLIC_POOL_ELEMENT_H_