From ee4eb695119bce96515b330f9fc83ddd67da5c62 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 2 Dec 2009 12:26:05 +0200 Subject: Implement de-registering polymorphic type information This is required for DLL/shared library unloading. --- libxsd/xsd/cxx/parser/substitution-map.hxx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'libxsd/xsd/cxx/parser/substitution-map.hxx') diff --git a/libxsd/xsd/cxx/parser/substitution-map.hxx b/libxsd/xsd/cxx/parser/substitution-map.hxx index 60c0ec8..0379164 100644 --- a/libxsd/xsd/cxx/parser/substitution-map.hxx +++ b/libxsd/xsd/cxx/parser/substitution-map.hxx @@ -137,6 +137,12 @@ namespace xsd map_.insert (std::pair (k, v)); } + void + erase (const C* member_ns, const C* member_name) + { + map_.erase (key (member_ns, member_name)); + } + // Check and get the type set if found. // bool @@ -219,6 +225,12 @@ namespace xsd const C* root_ns, const C* root_name, const C* member_type); + + ~substitution_map_entry (); + + private: + const C* member_ns_; + const C* member_name_; }; } } @@ -227,4 +239,3 @@ namespace xsd #include #endif // XSD_CXX_PARSER_SUBSTITUTION_MAP_HXX - -- cgit v1.1