Beispiel #1
0
void _Locale_impl::insert_messages_facets(const char* pname)
{
  messages<char>*    msg  = 0;
# ifndef __STL_NO_WCHAR_T
  messages<wchar_t>* wmsg = 0;
# endif

  char buf[_Locale_MAX_SIMPLE_NAME];
  if (pname == 0 || pname[0] == 0)
    pname = _Locale_messages_default(buf);

  if (pname == 0 || pname[0] == 0 || strcmp(pname, "C") == 0) {
    this->insert(_Stl_loc_classic_locale->_M_impl, messages<char>::id);
# ifndef __STL_NO_WCHAR_T
    this->insert(_Stl_loc_classic_locale->_M_impl, messages<wchar_t>::id);
# endif
  }
  else {
    __STL_TRY {
      msg  = new messages_byname<char>(pname);
# ifndef __STL_NO_WCHAR_T
      wmsg = new messages_byname<wchar_t>(pname);
# endif
    }
# ifndef __STL_NO_WCHAR_T
    __STL_UNWIND(delete msg; delete wmsg);
# else
    __STL_UNWIND(delete msg);
# endif
    _Locale_impl_insert(this,msg);
# ifndef __STL_NO_WCHAR_T
    _Locale_impl_insert(this,wmsg);
# endif
  }
}
Beispiel #2
0
void _Locale_impl::insert_messages_facets(const char* pname) {
  _Locale_impl* i2 = locale::classic()._M_impl;
  messages<char> *msg = 0;
#ifndef _STLP_NO_WCHAR_T
  messages<wchar_t> *wmsg = 0;
#endif

  char buf[_Locale_MAX_SIMPLE_NAME];
  if (pname == 0 || pname[0] == 0)
    pname = _Locale_messages_default(buf);

  if (pname == 0 || pname[0] == 0 || is_C_locale_name(pname)) {
    this->insert(i2, messages<char>::id);
#ifndef _STLP_NO_WCHAR_T
    this->insert(i2, messages<wchar_t>::id);
#endif
  }
  else {
    _STLP_TRY {
      msg  = new messages_byname<char>(pname);
#ifndef _STLP_NO_WCHAR_T
      wmsg = new messages_byname<wchar_t>(pname);
#endif
    }
#ifndef _STLP_NO_WCHAR_T
    _STLP_UNWIND(delete msg; delete wmsg);
#else
    _STLP_UNWIND(delete msg);
#endif
    _Locale_insert(this,msg);
#ifndef _STLP_NO_WCHAR_T
    _Locale_insert(this,wmsg);
#endif
  }
}
                                                                void _Locale::insert_messages_facets(const char* pname)
                                                                {
                                                                    _Locale_impl* i2 = locale::classic()._M_impl;
                                                                    messages<char>*    msg  = 0;
# ifndef _STLP_NO_WCHAR_T
messages<wchar_t>* wmsg = 0;
# endif

                                                                    char buf[_Locale_MAX_SIMPLE_NAME];
                                                                    if (pname == 0 || pname[0] == 0)
                                                                        pname = _Locale_messages_default(buf);

                                                                    if (pname == 0 || pname[0] == 0 || strcmp(pname, "C") == 0) {
#if defined(__LIBSTD_CPP_SYMBIAN32_WSD__) || defined(_STLP_LIBSTD_CPP_NO_STATIC_VAR_)
this->insert(i2, messages<char>::GetFacetLocaleId());
#else
this->insert(i2, messages<char>::id);
#endif
# ifndef _STLP_NO_WCHAR_T
#if defined(__LIBSTD_CPP_SYMBIAN32_WSD__) || defined(_STLP_LIBSTD_CPP_NO_STATIC_VAR_)
this->insert(i2, messages<wchar_t>::GetFacetLocaleId());
#else
this->insert(i2, messages<wchar_t>::id);
#endif  //__LIBSTD_CPP_SYMBIAN32_WSD__   
# endif //!_STLP_NO_WCHAR_T
} 
else {
_STLP_TRY {
msg  = new messages_byname<char>(pname);
# ifndef _STLP_NO_WCHAR_T
wmsg = new messages_byname<wchar_t>(pname);
# endif
}
# ifndef _STLP_NO_WCHAR_T
_STLP_UNWIND(delete msg; delete wmsg);
# else
_STLP_UNWIND(delete msg);
# endif
_Locale_insert(this,msg);
# ifndef _STLP_NO_WCHAR_T
_Locale_insert(this,wmsg);
# endif
}
}
 const char* _Loc_messages_default(char* p) { return _Locale_messages_default(p); }