diff options
Diffstat (limited to 'src/context/cdmap.h')
-rw-r--r-- | src/context/cdmap.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/context/cdmap.h b/src/context/cdmap.h index 4621d7fc5..9be4de19b 100644 --- a/src/context/cdmap.h +++ b/src/context/cdmap.h @@ -208,6 +208,20 @@ public: Debug("gc") << "done emptying trash for " << this << std::endl; } + void clear() throw(AssertionException) { + Debug("gc") << "cdmap " << this + << " disappearing, destroying..." << std::endl; + for(typename table_type::iterator i = d_map.begin(); + i != d_map.end(); + ++i) { + (*i).second->deleteSelf(); + } + d_map.clear(); + emptyTrash(); + Debug("gc") << "done emptying trash for " << this << std::endl; + } + + // The usual operators of map size_t size() const { |