summaryrefslogtreecommitdiff
path: root/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
diff options
context:
space:
mode:
Diffstat (limited to 'libxsd/xsd/cxx/parser/validating/inheritance-map.txx')
-rw-r--r--libxsd/xsd/cxx/parser/validating/inheritance-map.txx71
1 files changed, 0 insertions, 71 deletions
diff --git a/libxsd/xsd/cxx/parser/validating/inheritance-map.txx b/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
deleted file mode 100644
index f141d9e..0000000
--- a/libxsd/xsd/cxx/parser/validating/inheritance-map.txx
+++ /dev/null
@@ -1,71 +0,0 @@
-// file : xsd/cxx/parser/validating/inheritance-map.txx
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-namespace xsd
-{
- namespace cxx
- {
- namespace parser
- {
- namespace validating
- {
- template <typename C>
- bool inheritance_map<C>::
- check (const C* derived, const ro_string<C>& base) const
- {
- if (base == derived)
- return true;
-
- typename map::const_iterator i (map_.find (derived));
-
- if (i != map_.end ())
- {
- if (base == i->second)
- return true;
- else
- return check (i->second, base);
- }
-
- return false;
- }
-
- // inheritance_map_init
- //
- template<typename C>
- inheritance_map_init<C>::
- inheritance_map_init ()
- {
- if (count == 0)
- map = new inheritance_map<C>;
-
- ++count;
- }
-
- template<typename C>
- inheritance_map_init<C>::
- ~inheritance_map_init ()
- {
- if (--count == 0)
- delete map;
- }
-
- // inheritance_map_entry
- //
- template<typename C>
- inheritance_map_entry<C>::
- inheritance_map_entry (const C* derived, const C* base)
- : derived_ (derived)
- {
- inheritance_map_instance<C> ().insert (derived, base);
- }
-
- template<typename C>
- inheritance_map_entry<C>::
- ~inheritance_map_entry ()
- {
- inheritance_map_instance<C> ().erase (derived_);
- }
- }
- }
- }
-}