Home | History | Annotate | Download | only in src

Lines Matching refs:name

31 static inline bool is_C_locale_name (const char* name)
32 { return ((name[0] == 'C') && (name[1] == 0)); }
58 { _STLP_THROW(runtime_error("Invalid null locale name")); }
60 void _STLP_CALL locale::_M_throw_on_combine_error(const string& name) {
63 what += name.empty() ? "system" : name.c_str();
69 const char* name, const char* facet) {
76 what += name[0] == 0 ? "system" : name;
81 what += name[0] == 0 ? "system" : name;
88 what += " from name '";
89 what += name;
136 // Create a locale from a name.
137 locale::locale(const char* name)
139 if (!name)
142 if (is_C_locale_name(name)) {
149 impl = new _Locale_impl(locale::id::_S_max, name);
153 const char* ctype_name = name;
155 const char* numeric_name = name;
157 const char* time_name = name;
159 const char* collate_name = name;
161 const char* monetary_name = name;
163 const char* messages_name = name;
172 // Try to use a normalize locale name in order to have the == operator
179 impl->name = ctype_name;
181 // else we keep current name.
190 const char* name,
198 L->name = string("LC_CTYPE=") + _Locale_extract_ctype_name((c & locale::ctype) ? ctype_name : name, buf, 0, &__err_code) + ";";
199 L->name += string("LC_TIME=") + _Locale_extract_time_name((c & locale::time) ? time_name : name, buf, 0, &__err_code) + ";";
200 L->name += string("LC_NUMERIC=") + _Locale_extract_numeric_name((c & locale::numeric) ? numeric_name : name, buf, 0, &__err_code) + ";";
201 L->name += string("LC_COLLATE=") + _Locale_extract_collate_name((c & locale::collate) ? collate_name : name, buf, 0, &__err_code) + ";";
202 L->name += string("LC_MONETARY=") + _Locale_extract_monetary_name((c & locale::monetary) ? monetary_name : name, buf, 0, &__err_code) + ";";
203 L->name += string("LC_MESSAGES=") + _Locale_extract_messages_name((c & locale::messages) ? messages_name : name, buf, 0, &__err_code);
206 // Give L a name where all facets except those in category c
212 L->name = name1;
214 L->name = name2;
221 const char* name,
225 if ((c & locale::all) == 0 || (strcmp(name, ctype_name) == 0 &&
226 strcmp(name, time_name) == 0 &&
227 strcmp(name, numeric_name) == 0 &&
228 strcmp(name, collate_name) == 0 &&
229 strcmp(name, monetary_name) == 0 &&
230 strcmp(name, messages_name) == 0))
231 L->name = name;
237 L->name = ctype_name;
239 _Stl_loc_combine_names_aux(L, name, ctype_name, time_name, numeric_name, collate_name, monetary_name, messages_name, c);
245 // in category c are instead constructed by name.
246 locale::locale(const locale& L, const char* name, locale::category c)
248 if (!name)
251 if (_Nameless == name)
252 _STLP_THROW(runtime_error((string("Invalid locale name '") + _Nameless + "'").c_str()));
260 const char* ctype_name = name;
262 const char* numeric_name = name;
264 const char* time_name = name;
266 const char* collate_name = name;
268 const char* monetary_name = name;
270 const char* messages_name = name;
285 _Stl_loc_combine_names(impl, L._M_impl->name.c_str(),
301 if (L1.name() != _Nameless && L2.name() != _Nameless)
302 _Stl_loc_combine_names(impl, L1._M_impl->name.c_str(), L2._M_impl->name.c_str(), c);
304 impl->name = _Nameless;
388 string locale::name() const {
389 return _M_impl->name;
395 (this->name() == L.name() && this->name() != _Nameless);
421 if (L.name() != _Nameless)
422 setlocale(LC_ALL, L.name().c_str());