18 #include "dtoolbase.h" 19 #include "pallocator.h" 20 #include "register_type.h" 23 #ifndef USE_STL_ALLOCATOR 38 class plist :
public list<Type, pallocator_single<Type> > {
41 typedef list<Type, allocator> base_class;
42 typedef TYPENAME base_class::size_type size_type;
43 plist(
TypeHandle type_handle = plist_type_handle) : base_class(allocator(type_handle)) { }
45 plist(size_type n,
TypeHandle type_handle = plist_type_handle) : base_class(n, Type(), allocator(type_handle)) { }
46 plist(size_type n,
const Type &value,
TypeHandle type_handle = plist_type_handle) : base_class(n, value, allocator(type_handle)) { }
48 typedef TYPENAME base_class::iterator iterator;
49 typedef TYPENAME base_class::const_iterator const_iterator;
50 typedef TYPENAME base_class::reverse_iterator reverse_iterator;
51 typedef TYPENAME base_class::const_reverse_iterator const_reverse_iterator;
55 INLINE
void remove(
const Type &val) {
56 iterator it = this->begin();
57 while (it != this->end()) {
67 #endif // USE_STL_ALLOCATOR This is our own Panda specialization on the default STL list.
This is our own Panda specialization on the default STL allocator.
TypeHandle is the identifier used to differentiate C++ class types.