// file : XMLSchema/TypeInfo.tpp // author : Boris Kolpackov // cvs-id : $Id: TypeInfo.tpp 91814 2010-09-17 08:33:40Z johnnyw $ namespace XMLSchema { //@@ VC6 // template void add_info (XSCRT::ExtendedTypeInfoMap& map, T*) { using XSCRT::TypeId; using XSCRT::ExtendedTypeInfo; TypeId id (typeid (T)); ExtendedTypeInfo info (id); info.add_base (ExtendedTypeInfo::Access::public_, false, typeid (XSCRT::Type)); map.insert (std::make_pair (id, info)); } template inline TypeInfoInitializer:: TypeInfoInitializer (XSCRT::ExtendedTypeInfoMap& map) { using XSCRT::TypeId; using XSCRT::ExtendedTypeInfo; // XSCRT::Type // { TypeId id (typeid (XSCRT::Type)); map.insert (std::make_pair (id, ExtendedTypeInfo (id))); } //@@ VC6 add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0); add_info (map, 0);; add_info (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); add_info > (map, 0); // IDREF_Base // { TypeId id (typeid (IDREF_Base)); ExtendedTypeInfo info (id); info.add_base (ExtendedTypeInfo::Access::public_, false, typeid (XSCRT::Type)); map.insert (std::make_pair (id, info)); } // IDREF // { TypeId id (typeid (IDREF)); ExtendedTypeInfo info (id); info.add_base (ExtendedTypeInfo::Access::public_, false, typeid (IDREF_Base)); map.insert (std::make_pair (id, info)); } } }