Deleted Added
full compact
locale (241900) locale (242939)
1// -*- C++ -*-
2//===-------------------------- locale ------------------------------------===//
3//
4// The LLVM Compiler Infrastructure
5//
6// This file is dual licensed under the MIT and the University of Illinois Open
7// Source Licenses. See LICENSE.TXT for details.
8//

--- 678 unchanged lines hidden (view full) ---

687 *__g_end++ = __dc;
688 }
689 if (__f >= 22)
690 return 0;
691 ++__dc;
692 return 0;
693}
694
1// -*- C++ -*-
2//===-------------------------- locale ------------------------------------===//
3//
4// The LLVM Compiler Infrastructure
5//
6// This file is dual licensed under the MIT and the University of Illinois Open
7// Source Licenses. See LICENSE.TXT for details.
8//

--- 678 unchanged lines hidden (view full) ---

687 *__g_end++ = __dc;
688 }
689 if (__f >= 22)
690 return 0;
691 ++__dc;
692 return 0;
693}
694
695extern template struct __num_get<char>;
696extern template struct __num_get<wchar_t>;
695_LIBCPP_EXTERN_TEMPLATE(struct __num_get<char>)
696_LIBCPP_EXTERN_TEMPLATE(struct __num_get<wchar_t>)
697
698template <class _CharT, class _InputIterator = istreambuf_iterator<_CharT> >
699class _LIBCPP_VISIBLE num_get
700 : public locale::facet,
701 private __num_get<_CharT>
702{
703public:
704 typedef _CharT char_type;

--- 604 unchanged lines hidden (view full) ---

1309#endif
1310 __err = ios_base::failbit;
1311 // EOF checked
1312 if (__b == __e)
1313 __err |= ios_base::eofbit;
1314 return __b;
1315}
1316
697
698template <class _CharT, class _InputIterator = istreambuf_iterator<_CharT> >
699class _LIBCPP_VISIBLE num_get
700 : public locale::facet,
701 private __num_get<_CharT>
702{
703public:
704 typedef _CharT char_type;

--- 604 unchanged lines hidden (view full) ---

1309#endif
1310 __err = ios_base::failbit;
1311 // EOF checked
1312 if (__b == __e)
1313 __err |= ios_base::eofbit;
1314 return __b;
1315}
1316
1317extern template class num_get<char>;
1318extern template class num_get<wchar_t>;
1317_LIBCPP_EXTERN_TEMPLATE(class num_get<char>)
1318_LIBCPP_EXTERN_TEMPLATE(class num_get<wchar_t>)
1319
1320struct __num_put_base
1321{
1322protected:
1323 static void __format_int(char* __fmt, const char* __len, bool __signd,
1324 ios_base::fmtflags __flags);
1325 static bool __format_float(char* __fmt, const char* __len,
1326 ios_base::fmtflags __flags);

--- 132 unchanged lines hidden (view full) ---

1459 __ct.widen(__nf, __ne, __oe);
1460 __oe += __ne - __nf;
1461 if (__np == __ne)
1462 __op = __oe;
1463 else
1464 __op = __ob + (__np - __nb);
1465}
1466
1319
1320struct __num_put_base
1321{
1322protected:
1323 static void __format_int(char* __fmt, const char* __len, bool __signd,
1324 ios_base::fmtflags __flags);
1325 static bool __format_float(char* __fmt, const char* __len,
1326 ios_base::fmtflags __flags);

--- 132 unchanged lines hidden (view full) ---

1459 __ct.widen(__nf, __ne, __oe);
1460 __oe += __ne - __nf;
1461 if (__np == __ne)
1462 __op = __oe;
1463 else
1464 __op = __ob + (__np - __nb);
1465}
1466
1467extern template struct __num_put<char>;
1468extern template struct __num_put<wchar_t>;
1467_LIBCPP_EXTERN_TEMPLATE(struct __num_put<char>)
1468_LIBCPP_EXTERN_TEMPLATE(struct __num_put<wchar_t>)
1469
1470template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
1471class _LIBCPP_VISIBLE num_put
1472 : public locale::facet,
1473 private __num_put<_CharT>
1474{
1475public:
1476 typedef _CharT char_type;

--- 456 unchanged lines hidden (view full) ---

1933 __op = __oe;
1934 else
1935 __op = __o + (__np - __nar);
1936 // [__o, __oe) contains wide number
1937 // Stage 3 & 4
1938 return __pad_and_output(__s, __o, __op, __oe, __iob, __fl);
1939}
1940
1469
1470template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
1471class _LIBCPP_VISIBLE num_put
1472 : public locale::facet,
1473 private __num_put<_CharT>
1474{
1475public:
1476 typedef _CharT char_type;

--- 456 unchanged lines hidden (view full) ---

1933 __op = __oe;
1934 else
1935 __op = __o + (__np - __nar);
1936 // [__o, __oe) contains wide number
1937 // Stage 3 & 4
1938 return __pad_and_output(__s, __o, __op, __oe, __iob, __fl);
1939}
1940
1941extern template class num_put<char>;
1942extern template class num_put<wchar_t>;
1941_LIBCPP_EXTERN_TEMPLATE(class num_put<char>)
1942_LIBCPP_EXTERN_TEMPLATE(class num_put<wchar_t>)
1943
1944template <class _CharT, class _InputIterator>
1945_LIBCPP_HIDDEN
1946int
1947__get_up_to_n_digits(_InputIterator& __b, _InputIterator __e,
1948 ios_base::iostate& __err, const ctype<_CharT>& __ct, int __n)
1949{
1950 // Precondition: __n >= 1

--- 649 unchanged lines hidden (view full) ---

2600 __get_percent(__b, __e, __err, __ct);
2601 break;
2602 default:
2603 __err |= ios_base::failbit;
2604 }
2605 return __b;
2606}
2607
1943
1944template <class _CharT, class _InputIterator>
1945_LIBCPP_HIDDEN
1946int
1947__get_up_to_n_digits(_InputIterator& __b, _InputIterator __e,
1948 ios_base::iostate& __err, const ctype<_CharT>& __ct, int __n)
1949{
1950 // Precondition: __n >= 1

--- 649 unchanged lines hidden (view full) ---

2600 __get_percent(__b, __e, __err, __ct);
2601 break;
2602 default:
2603 __err |= ios_base::failbit;
2604 }
2605 return __b;
2606}
2607
2608extern template class time_get<char>;
2609extern template class time_get<wchar_t>;
2608_LIBCPP_EXTERN_TEMPLATE(class time_get<char>)
2609_LIBCPP_EXTERN_TEMPLATE(class time_get<wchar_t>)
2610
2611class __time_get
2612{
2613protected:
2614 locale_t __loc_;
2615
2616 __time_get(const char* __nm);
2617 __time_get(const string& __nm);

--- 65 unchanged lines hidden (view full) ---

2683 _LIBCPP_INLINE_VISIBILITY
2684 virtual const string_type& __r() const {return this->__r_;}
2685 _LIBCPP_INLINE_VISIBILITY
2686 virtual const string_type& __x() const {return this->__x_;}
2687 _LIBCPP_INLINE_VISIBILITY
2688 virtual const string_type& __X() const {return this->__X_;}
2689};
2690
2610
2611class __time_get
2612{
2613protected:
2614 locale_t __loc_;
2615
2616 __time_get(const char* __nm);
2617 __time_get(const string& __nm);

--- 65 unchanged lines hidden (view full) ---

2683 _LIBCPP_INLINE_VISIBILITY
2684 virtual const string_type& __r() const {return this->__r_;}
2685 _LIBCPP_INLINE_VISIBILITY
2686 virtual const string_type& __x() const {return this->__x_;}
2687 _LIBCPP_INLINE_VISIBILITY
2688 virtual const string_type& __X() const {return this->__X_;}
2689};
2690
2691extern template class time_get_byname<char>;
2692extern template class time_get_byname<wchar_t>;
2691_LIBCPP_EXTERN_TEMPLATE(class time_get_byname<char>)
2692_LIBCPP_EXTERN_TEMPLATE(class time_get_byname<wchar_t>)
2693
2694class __time_put
2695{
2696 locale_t __loc_;
2697protected:
2698 _LIBCPP_ALWAYS_INLINE __time_put() : __loc_(_LIBCPP_GET_C_LOCALE) {}
2699 __time_put(const char* __nm);
2700 __time_put(const string& __nm);

--- 95 unchanged lines hidden (view full) ---

2796{
2797 char_type __nar[100];
2798 char_type* __nb = __nar;
2799 char_type* __ne = __nb + 100;
2800 __do_put(__nb, __ne, __tm, __fmt, __mod);
2801 return _VSTD::copy(__nb, __ne, __s);
2802}
2803
2693
2694class __time_put
2695{
2696 locale_t __loc_;
2697protected:
2698 _LIBCPP_ALWAYS_INLINE __time_put() : __loc_(_LIBCPP_GET_C_LOCALE) {}
2699 __time_put(const char* __nm);
2700 __time_put(const string& __nm);

--- 95 unchanged lines hidden (view full) ---

2796{
2797 char_type __nar[100];
2798 char_type* __nb = __nar;
2799 char_type* __ne = __nb + 100;
2800 __do_put(__nb, __ne, __tm, __fmt, __mod);
2801 return _VSTD::copy(__nb, __ne, __s);
2802}
2803
2804extern template class time_put<char>;
2805extern template class time_put<wchar_t>;
2804_LIBCPP_EXTERN_TEMPLATE(class time_put<char>)
2805_LIBCPP_EXTERN_TEMPLATE(class time_put<wchar_t>)
2806
2807template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
2808class _LIBCPP_VISIBLE time_put_byname
2809 : public time_put<_CharT, _OutputIterator>
2810{
2811public:
2812 _LIBCPP_ALWAYS_INLINE
2813 explicit time_put_byname(const char* __nm, size_t __refs = 0)
2814 : time_put<_CharT, _OutputIterator>(__nm, __refs) {}
2815
2816 _LIBCPP_ALWAYS_INLINE
2817 explicit time_put_byname(const string& __nm, size_t __refs = 0)
2818 : time_put<_CharT, _OutputIterator>(__nm, __refs) {}
2819
2820protected:
2821 _LIBCPP_ALWAYS_INLINE
2822 ~time_put_byname() {}
2823};
2824
2806
2807template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
2808class _LIBCPP_VISIBLE time_put_byname
2809 : public time_put<_CharT, _OutputIterator>
2810{
2811public:
2812 _LIBCPP_ALWAYS_INLINE
2813 explicit time_put_byname(const char* __nm, size_t __refs = 0)
2814 : time_put<_CharT, _OutputIterator>(__nm, __refs) {}
2815
2816 _LIBCPP_ALWAYS_INLINE
2817 explicit time_put_byname(const string& __nm, size_t __refs = 0)
2818 : time_put<_CharT, _OutputIterator>(__nm, __refs) {}
2819
2820protected:
2821 _LIBCPP_ALWAYS_INLINE
2822 ~time_put_byname() {}
2823};
2824
2825extern template class time_put_byname<char>;
2826extern template class time_put_byname<wchar_t>;
2825_LIBCPP_EXTERN_TEMPLATE(class time_put_byname<char>)
2826_LIBCPP_EXTERN_TEMPLATE(class time_put_byname<wchar_t>)
2827
2828// money_base
2829
2830class _LIBCPP_VISIBLE money_base
2831{
2832public:
2833 enum part {none, space, symbol, sign, value};
2834 struct pattern {char field[4];};

--- 36 unchanged lines hidden (view full) ---

2871 virtual char_type do_decimal_point() const {return numeric_limits<char_type>::max();}
2872 virtual char_type do_thousands_sep() const {return numeric_limits<char_type>::max();}
2873 virtual string do_grouping() const {return string();}
2874 virtual string_type do_curr_symbol() const {return string_type();}
2875 virtual string_type do_positive_sign() const {return string_type();}
2876 virtual string_type do_negative_sign() const {return string_type(1, '-');}
2877 virtual int do_frac_digits() const {return 0;}
2878 virtual pattern do_pos_format() const
2827
2828// money_base
2829
2830class _LIBCPP_VISIBLE money_base
2831{
2832public:
2833 enum part {none, space, symbol, sign, value};
2834 struct pattern {char field[4];};

--- 36 unchanged lines hidden (view full) ---

2871 virtual char_type do_decimal_point() const {return numeric_limits<char_type>::max();}
2872 virtual char_type do_thousands_sep() const {return numeric_limits<char_type>::max();}
2873 virtual string do_grouping() const {return string();}
2874 virtual string_type do_curr_symbol() const {return string_type();}
2875 virtual string_type do_positive_sign() const {return string_type();}
2876 virtual string_type do_negative_sign() const {return string_type(1, '-');}
2877 virtual int do_frac_digits() const {return 0;}
2878 virtual pattern do_pos_format() const
2879 {pattern __p = {symbol, sign, none, value}; return __p;}
2879 {pattern __p = {{symbol, sign, none, value}}; return __p;}
2880 virtual pattern do_neg_format() const
2880 virtual pattern do_neg_format() const
2881 {pattern __p = {symbol, sign, none, value}; return __p;}
2881 {pattern __p = {{symbol, sign, none, value}}; return __p;}
2882};
2883
2884template <class _CharT, bool _International>
2885locale::id
2886moneypunct<_CharT, _International>::id;
2887
2882};
2883
2884template <class _CharT, bool _International>
2885locale::id
2886moneypunct<_CharT, _International>::id;
2887
2888extern template class moneypunct<char, false>;
2889extern template class moneypunct<char, true>;
2890extern template class moneypunct<wchar_t, false>;
2891extern template class moneypunct<wchar_t, true>;
2888_LIBCPP_EXTERN_TEMPLATE(class moneypunct<char, false>)
2889_LIBCPP_EXTERN_TEMPLATE(class moneypunct<char, true>)
2890_LIBCPP_EXTERN_TEMPLATE(class moneypunct<wchar_t, false>)
2891_LIBCPP_EXTERN_TEMPLATE(class moneypunct<wchar_t, true>)
2892
2893// moneypunct_byname
2894
2895template <class _CharT, bool _International = false>
2896class _LIBCPP_VISIBLE moneypunct_byname
2897 : public moneypunct<_CharT, _International>
2898{
2899public:

--- 37 unchanged lines hidden (view full) ---

2937 void init(const char*);
2938};
2939
2940template<> void moneypunct_byname<char, false>::init(const char*);
2941template<> void moneypunct_byname<char, true>::init(const char*);
2942template<> void moneypunct_byname<wchar_t, false>::init(const char*);
2943template<> void moneypunct_byname<wchar_t, true>::init(const char*);
2944
2892
2893// moneypunct_byname
2894
2895template <class _CharT, bool _International = false>
2896class _LIBCPP_VISIBLE moneypunct_byname
2897 : public moneypunct<_CharT, _International>
2898{
2899public:

--- 37 unchanged lines hidden (view full) ---

2937 void init(const char*);
2938};
2939
2940template<> void moneypunct_byname<char, false>::init(const char*);
2941template<> void moneypunct_byname<char, true>::init(const char*);
2942template<> void moneypunct_byname<wchar_t, false>::init(const char*);
2943template<> void moneypunct_byname<wchar_t, true>::init(const char*);
2944
2945extern template class moneypunct_byname<char, false>;
2946extern template class moneypunct_byname<char, true>;
2947extern template class moneypunct_byname<wchar_t, false>;
2948extern template class moneypunct_byname<wchar_t, true>;
2945_LIBCPP_EXTERN_TEMPLATE(class moneypunct_byname<char, false>)
2946_LIBCPP_EXTERN_TEMPLATE(class moneypunct_byname<char, true>)
2947_LIBCPP_EXTERN_TEMPLATE(class moneypunct_byname<wchar_t, false>)
2948_LIBCPP_EXTERN_TEMPLATE(class moneypunct_byname<wchar_t, true>)
2949
2950// money_get
2951
2952template <class _CharT>
2953class __money_get
2954{
2955protected:
2956 typedef _CharT char_type;

--- 39 unchanged lines hidden (view full) ---

2996 __dp = __mp.decimal_point();
2997 __ts = __mp.thousands_sep();
2998 __grp = __mp.grouping();
2999 __sym = __mp.curr_symbol();
3000 __fd = __mp.frac_digits();
3001 }
3002}
3003
2949
2950// money_get
2951
2952template <class _CharT>
2953class __money_get
2954{
2955protected:
2956 typedef _CharT char_type;

--- 39 unchanged lines hidden (view full) ---

2996 __dp = __mp.decimal_point();
2997 __ts = __mp.thousands_sep();
2998 __grp = __mp.grouping();
2999 __sym = __mp.curr_symbol();
3000 __fd = __mp.frac_digits();
3001 }
3002}
3003
3004extern template class __money_get<char>;
3005extern template class __money_get<wchar_t>;
3004_LIBCPP_EXTERN_TEMPLATE(class __money_get<char>)
3005_LIBCPP_EXTERN_TEMPLATE(class __money_get<wchar_t>)
3006
3007template <class _CharT, class _InputIterator = istreambuf_iterator<_CharT> >
3008class _LIBCPP_VISIBLE money_get
3009 : public locale::facet,
3010 private __money_get<_CharT>
3011{
3012public:
3013 typedef _CharT char_type;

--- 173 unchanged lines hidden (view full) ---

3187 case money_base::symbol:
3188 {
3189 bool __more_needed = __trailing_sign ||
3190 (__p < 2) ||
3191 (__p == 2 && __pat.field[3] != static_cast<char>(money_base::none));
3192 bool __sb = __flags & ios_base::showbase;
3193 if (__sb || __more_needed)
3194 {
3006
3007template <class _CharT, class _InputIterator = istreambuf_iterator<_CharT> >
3008class _LIBCPP_VISIBLE money_get
3009 : public locale::facet,
3010 private __money_get<_CharT>
3011{
3012public:
3013 typedef _CharT char_type;

--- 173 unchanged lines hidden (view full) ---

3187 case money_base::symbol:
3188 {
3189 bool __more_needed = __trailing_sign ||
3190 (__p < 2) ||
3191 (__p == 2 && __pat.field[3] != static_cast<char>(money_base::none));
3192 bool __sb = __flags & ios_base::showbase;
3193 if (__sb || __more_needed)
3194 {
3195 ios_base::iostate __et = ios_base::goodbit;
3196 typename string_type::const_iterator __sym_space_end = __sym.begin();
3197 if (__p > 0 && (__pat.field[__p - 1] == money_base::none ||
3198 __pat.field[__p - 1] == money_base::space)) {
3199 // Match spaces we've already read against spaces at
3200 // the beginning of __sym.
3201 while (__sym_space_end != __sym.end() &&
3202 __ct.is(ctype_base::space, *__sym_space_end))
3203 ++__sym_space_end;

--- 174 unchanged lines hidden (view full) ---

3378 break;
3379 __v.append(__w, __wn);
3380 }
3381 if (__b == __e)
3382 __err |= ios_base::eofbit;
3383 return __b;
3384}
3385
3195 typename string_type::const_iterator __sym_space_end = __sym.begin();
3196 if (__p > 0 && (__pat.field[__p - 1] == money_base::none ||
3197 __pat.field[__p - 1] == money_base::space)) {
3198 // Match spaces we've already read against spaces at
3199 // the beginning of __sym.
3200 while (__sym_space_end != __sym.end() &&
3201 __ct.is(ctype_base::space, *__sym_space_end))
3202 ++__sym_space_end;

--- 174 unchanged lines hidden (view full) ---

3377 break;
3378 __v.append(__w, __wn);
3379 }
3380 if (__b == __e)
3381 __err |= ios_base::eofbit;
3382 return __b;
3383}
3384
3386extern template class money_get<char>;
3387extern template class money_get<wchar_t>;
3385_LIBCPP_EXTERN_TEMPLATE(class money_get<char>)
3386_LIBCPP_EXTERN_TEMPLATE(class money_get<wchar_t>)
3388
3389// money_put
3390
3391template <class _CharT>
3392class __money_put
3393{
3394protected:
3395 typedef _CharT char_type;

--- 157 unchanged lines hidden (view full) ---

3553 __me = _VSTD::copy(__sn.begin()+1, __sn.end(), __me);
3554 // set alignment
3555 if ((__flags & ios_base::adjustfield) == ios_base::left)
3556 __mi = __me;
3557 else if ((__flags & ios_base::adjustfield) != ios_base::internal)
3558 __mi = __mb;
3559}
3560
3387
3388// money_put
3389
3390template <class _CharT>
3391class __money_put
3392{
3393protected:
3394 typedef _CharT char_type;

--- 157 unchanged lines hidden (view full) ---

3552 __me = _VSTD::copy(__sn.begin()+1, __sn.end(), __me);
3553 // set alignment
3554 if ((__flags & ios_base::adjustfield) == ios_base::left)
3555 __mi = __me;
3556 else if ((__flags & ios_base::adjustfield) != ios_base::internal)
3557 __mi = __mb;
3558}
3559
3561extern template class __money_put<char>;
3562extern template class __money_put<wchar_t>;
3560_LIBCPP_EXTERN_TEMPLATE(class __money_put<char>)
3561_LIBCPP_EXTERN_TEMPLATE(class __money_put<wchar_t>)
3563
3564template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
3565class _LIBCPP_VISIBLE money_put
3566 : public locale::facet,
3567 private __money_put<_CharT>
3568{
3569public:
3570 typedef _CharT char_type;

--- 139 unchanged lines hidden (view full) ---

3710 char_type* __mi;
3711 char_type* __me;
3712 this->__format(__mb, __mi, __me, __iob.flags(),
3713 __digits.data(), __digits.data() + __digits.size(), __ct,
3714 __neg, __pat, __dp, __ts, __grp, __sym, __sn, __fd);
3715 return __pad_and_output(__s, __mb, __mi, __me, __iob, __fl);
3716}
3717
3562
3563template <class _CharT, class _OutputIterator = ostreambuf_iterator<_CharT> >
3564class _LIBCPP_VISIBLE money_put
3565 : public locale::facet,
3566 private __money_put<_CharT>
3567{
3568public:
3569 typedef _CharT char_type;

--- 139 unchanged lines hidden (view full) ---

3709 char_type* __mi;
3710 char_type* __me;
3711 this->__format(__mb, __mi, __me, __iob.flags(),
3712 __digits.data(), __digits.data() + __digits.size(), __ct,
3713 __neg, __pat, __dp, __ts, __grp, __sym, __sn, __fd);
3714 return __pad_and_output(__s, __mb, __mi, __me, __iob, __fl);
3715}
3716
3718extern template class money_put<char>;
3719extern template class money_put<wchar_t>;
3717_LIBCPP_EXTERN_TEMPLATE(class money_put<char>)
3718_LIBCPP_EXTERN_TEMPLATE(class money_put<wchar_t>)
3720
3721// messages
3722
3723class _LIBCPP_VISIBLE messages_base
3724{
3725public:
3726 typedef ptrdiff_t catalog;
3727

--- 92 unchanged lines hidden (view full) ---

3820#if !_WIN32
3821 if (__c != -1)
3822 __c <<= 1;
3823 nl_catd __cat = (nl_catd)__c;
3824 catclose(__cat);
3825#endif // !_WIN32
3826}
3827
3719
3720// messages
3721
3722class _LIBCPP_VISIBLE messages_base
3723{
3724public:
3725 typedef ptrdiff_t catalog;
3726

--- 92 unchanged lines hidden (view full) ---

3819#if !_WIN32
3820 if (__c != -1)
3821 __c <<= 1;
3822 nl_catd __cat = (nl_catd)__c;
3823 catclose(__cat);
3824#endif // !_WIN32
3825}
3826
3828extern template class messages<char>;
3829extern template class messages<wchar_t>;
3827_LIBCPP_EXTERN_TEMPLATE(class messages<char>)
3828_LIBCPP_EXTERN_TEMPLATE(class messages<wchar_t>)
3830
3831template <class _CharT>
3832class _LIBCPP_VISIBLE messages_byname
3833 : public messages<_CharT>
3834{
3835public:
3836 typedef messages_base::catalog catalog;
3837 typedef basic_string<_CharT> string_type;

--- 6 unchanged lines hidden (view full) ---

3844 explicit messages_byname(const string&, size_t __refs = 0)
3845 : messages<_CharT>(__refs) {}
3846
3847protected:
3848 _LIBCPP_ALWAYS_INLINE
3849 ~messages_byname() {}
3850};
3851
3829
3830template <class _CharT>
3831class _LIBCPP_VISIBLE messages_byname
3832 : public messages<_CharT>
3833{
3834public:
3835 typedef messages_base::catalog catalog;
3836 typedef basic_string<_CharT> string_type;

--- 6 unchanged lines hidden (view full) ---

3843 explicit messages_byname(const string&, size_t __refs = 0)
3844 : messages<_CharT>(__refs) {}
3845
3846protected:
3847 _LIBCPP_ALWAYS_INLINE
3848 ~messages_byname() {}
3849};
3850
3852extern template class messages_byname<char>;
3853extern template class messages_byname<wchar_t>;
3851_LIBCPP_EXTERN_TEMPLATE(class messages_byname<char>)
3852_LIBCPP_EXTERN_TEMPLATE(class messages_byname<wchar_t>)
3854
3855template<class _Codecvt, class _Elem = wchar_t,
3856 class _Wide_alloc = allocator<_Elem>,
3857 class _Byte_alloc = allocator<char> >
3858class _LIBCPP_VISIBLE wstring_convert
3859{
3860public:
3861 typedef basic_string<char, char_traits<char>, _Byte_alloc> byte_string;

--- 711 unchanged lines hidden ---
3853
3854template<class _Codecvt, class _Elem = wchar_t,
3855 class _Wide_alloc = allocator<_Elem>,
3856 class _Byte_alloc = allocator<char> >
3857class _LIBCPP_VISIBLE wstring_convert
3858{
3859public:
3860 typedef basic_string<char, char_traits<char>, _Byte_alloc> byte_string;

--- 711 unchanged lines hidden ---