// xlocale -- class locale exotic char member functions #include #include #include _STD_BEGIN #pragma warning(disable: 4786) typedef char_traits _Traits; typedef istreambuf_iterator _Initer; typedef ostreambuf_iterator _Outiter; // facets associated with C categories #define ADDFAC(Facet, cat, ptrimp, ptrloc) \ if ((_CATMASK(Facet::_Getcat()) & cat) == 0) \ ; \ else if (ptrloc == 0) \ ptrimp->_Addfac(_NEW_CRT Facet(lobj), Facet::id); \ else \ ptrimp->_Addfac((locale::facet *)&_USE(*ptrloc, Facet), Facet::id); // moved from locale to ease subsetting typedef collate _T5; typedef messages _T6; typedef money_get _T7; typedef money_put _T9; typedef moneypunct _T11; typedef moneypunct _T12; typedef time_get _T13; typedef time_put _T14; void __cdecl locale::_Locimp::_Makexloc(const _Locinfo& lobj, locale::category cat, _Locimp *ptrimp, const locale *ptrloc) { // setup exotic char part of a new locale ADDFAC(_T5, cat, ptrimp, ptrloc); ADDFAC(_T6, cat, ptrimp, ptrloc); ADDFAC(_T7, cat, ptrimp, ptrloc); ADDFAC(_T9, cat, ptrimp, ptrloc); ADDFAC(_T11, cat, ptrimp, ptrloc); ADDFAC(_T12, cat, ptrimp, ptrloc); ADDFAC(_T13, cat, ptrimp, ptrloc); ADDFAC(_T14, cat, ptrimp, ptrloc); } _STD_END /* * Copyright (c) 1992-2001 by P.J. Plauger. ALL RIGHTS RESERVED. * Consult your license regarding permissions and restrictions. V3.10:0009 */