#ifndef WCL_Set_HH #define WCL_Set_HH #include #include #include namespace WCL { namespace _private_Set { //===================================================================================================================== template class Set : private std::set > { // Typedefs --------------------------------------------------------------------------------------------------------- private:typedef std::set > Super; typedef Set Self; // Constructors ----------------------------------------------------------------------------------------------------- public: Set() : Super() {} private:Set(Set const&); public:~Set() {} // Find ------------------------------------------------------------------------------------------------------------- public: bool have(T const& t) const { return Super::count(&t) > 0; } //------------------------------------------------------------------------------------------------------------------- public: TEMPLATE_ITERATOR_BASE_IMPL(Super,T,Get_Ptr) //------------------------------------------------------------------------------------------------------------------- public: void remove(iterator i) { Super::erase(i.ref()); } void remove(T const& t) { Super::erase(&t); } void insert(T& t) { Super::insert(&t); } public: using Super::clear; using Super::empty; using Super::size; }; } #endif