summaryrefslogtreecommitdiff
path: root/libxsd/xsd/cxx/tree/types.txx
diff options
context:
space:
mode:
Diffstat (limited to 'libxsd/xsd/cxx/tree/types.txx')
-rw-r--r--libxsd/xsd/cxx/tree/types.txx24
1 files changed, 6 insertions, 18 deletions
diff --git a/libxsd/xsd/cxx/tree/types.txx b/libxsd/xsd/cxx/tree/types.txx
index 799c5fa..7c9d696 100644
--- a/libxsd/xsd/cxx/tree/types.txx
+++ b/libxsd/xsd/cxx/tree/types.txx
@@ -185,32 +185,20 @@ namespace xsd
void id<C, B>::
register_id ()
{
- container* c (this->_container ());
+ container* r (this->_root ());
- if (c != 0 && !this->empty ())
- {
- //std::cerr << "registering " << c
- // << " as '" << *this
- // << "' on " << c << std::endl;
-
- c->_register_id (identity_, c);
- }
+ if (r != 0 && !this->empty ())
+ r->_register_id (identity_, this->_container ());
}
template <typename C, typename B>
void id<C, B>::
unregister_id ()
{
- container* c (this->_container ());
+ container* r (this->_root ());
- if (c != 0 && !this->empty ())
- {
- //std::cerr << "un-registering " << c
- // << " as '" << *this
- // << "' on " << c << std::endl;
-
- c->_unregister_id (identity_);
- }
+ if (r != 0 && !this->empty ())
+ r->_unregister_id (identity_);
}