98 virtual void PrintOn(ostream & strm)
const;
105 PINLINE operator PINDEX()
const;
155 virtual ~PHashTableInfo() { Destruct(); }
156 virtual void DestroyContents();
430 const PAbstractSet &
set
437 const PAbstractSet & set1,
438 const PAbstractSet & set2,
439 PAbstractSet * intersection = NULL
506 ) {
Append(obj.Clone());
return *
this; }
590 #define PSET(cls, T) typedef PSet<T> cls
604 #define PDECLARE_SET(cls, T, initDelObj) \
605 class cls : public PSet<T> { \
606 typedef PSet<T> BaseClass; PCLASSINFO(cls, BaseClass) \
608 cls(int dummy, const cls * c) \
609 : BaseClass(dummy, c) { } \
611 cls(PBoolean initialDeleteObjects = initDelObj) \
612 : BaseClass(initialDeleteObjects) { } \
613 virtual PObject * Clone() const \
614 { return PNEW cls(0, this); } \
814 virtual PINDEX Append(
1004 #define PDICTIONARY(cls, K, D) typedef PDictionary<K, D> cls
1019 #define PDECLARE_DICTIONARY(cls, K, D) \
1020 PDICTIONARY(cls##_PTemplate, K, D); \
1021 PDECLARE_CLASS(cls, cls##_PTemplate) \
1023 cls(int dummy, const cls * c) \
1024 : cls##_PTemplate(dummy, c) { } \
1027 : cls##_PTemplate() { } \
1028 virtual PObject * Clone() const \
1029 { return PNEW cls(0, this); } \
1197 #define PORDINAL_DICTIONARY(cls, K) typedef POrdinalDictionary<K> cls
1214 #define PDECLARE_ORDINAL_DICTIONARY(cls, K) \
1215 PORDINAL_DICTIONARY(cls##_PTemplate, K); \
1216 PDECLARE_CLASS(cls, POrdinalDictionary<K>) \
1218 cls(int dummy, const cls * c) \
1219 : cls##_PTemplate(dummy, c) { } \
1222 : cls##_PTemplate() { } \
1223 virtual PObject * Clone() const \
1224 { return PNEW cls(0, this); } \
1227 #endif // PTLIB_DICT_H