⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 codecvt.h

📁 openRisc2000编译链接器等,用于i386 cygwin
💻 H
📖 第 1 页 / 共 2 页
字号:
      do_out(state_type& __state, const intern_type* __from,	     const intern_type* __from_end, const intern_type*& __from_next,	     extern_type* __to, extern_type* __to_end,	     extern_type*& __to_next) const = 0;      virtual result      do_unshift(state_type& __state, extern_type* __to,		 extern_type* __to_end, extern_type*& __to_next) const = 0;      virtual result      do_in(state_type& __state, const extern_type* __from,	    const extern_type* __from_end, const extern_type*& __from_next,	    intern_type* __to, intern_type* __to_end,	    intern_type*& __to_next) const = 0;      virtual int      do_encoding() const throw() = 0;      virtual bool      do_always_noconv() const throw() = 0;      virtual int      do_length(state_type&, const extern_type* __from,		const extern_type* __end, size_t __max) const = 0;      virtual int      do_max_length() const throw() = 0;    };  // 22.2.1.5 Template class codecvt  // NB: Generic, mostly useless implementation.  template<typename _InternT, typename _ExternT, typename _StateT>    class codecvt    : public __codecvt_abstract_base<_InternT, _ExternT, _StateT>    {    public:      // Types:      typedef codecvt_base::result	result;      typedef _InternT			intern_type;      typedef _ExternT			extern_type;      typedef _StateT			state_type;    protected:      __c_locale			_M_c_locale_codecvt;    public:      static locale::id			id;      explicit      codecvt(size_t __refs = 0)      : __codecvt_abstract_base<_InternT, _ExternT, _StateT> (__refs) { }      explicit      codecvt(__c_locale __cloc, size_t __refs = 0);    protected:      virtual      ~codecvt() { }      virtual result      do_out(state_type& __state, const intern_type* __from,	     const intern_type* __from_end, const intern_type*& __from_next,	     extern_type* __to, extern_type* __to_end,	     extern_type*& __to_next) const;      virtual result      do_unshift(state_type& __state, extern_type* __to,		 extern_type* __to_end, extern_type*& __to_next) const;      virtual result      do_in(state_type& __state, const extern_type* __from,	    const extern_type* __from_end, const extern_type*& __from_next,	    intern_type* __to, intern_type* __to_end,	    intern_type*& __to_next) const;      virtual int      do_encoding() const throw();      virtual bool      do_always_noconv() const throw();      virtual int      do_length(state_type&, const extern_type* __from,		const extern_type* __end, size_t __max) const;      virtual int      do_max_length() const throw();    };  template<typename _InternT, typename _ExternT, typename _StateT>    locale::id codecvt<_InternT, _ExternT, _StateT>::id;  // codecvt<char, char, mbstate_t> required specialization  template<>    class codecvt<char, char, mbstate_t>    : public __codecvt_abstract_base<char, char, mbstate_t>    {    public:      // Types:      typedef char			intern_type;      typedef char			extern_type;      typedef mbstate_t			state_type;    protected:      __c_locale			_M_c_locale_codecvt;    public:      static locale::id id;      explicit      codecvt(size_t __refs = 0);      explicit      codecvt(__c_locale __cloc, size_t __refs = 0);    protected:      virtual      ~codecvt();      virtual result      do_out(state_type& __state, const intern_type* __from,	     const intern_type* __from_end, const intern_type*& __from_next,	     extern_type* __to, extern_type* __to_end,	     extern_type*& __to_next) const;      virtual result      do_unshift(state_type& __state, extern_type* __to,		 extern_type* __to_end, extern_type*& __to_next) const;      virtual result      do_in(state_type& __state, const extern_type* __from,	    const extern_type* __from_end, const extern_type*& __from_next,	    intern_type* __to, intern_type* __to_end,	    intern_type*& __to_next) const;      virtual int      do_encoding() const throw();      virtual bool      do_always_noconv() const throw();      virtual int      do_length(state_type&, const extern_type* __from,		const extern_type* __end, size_t __max) const;      virtual int      do_max_length() const throw();  };#ifdef _GLIBCXX_USE_WCHAR_T  // codecvt<wchar_t, char, mbstate_t> required specialization  template<>    class codecvt<wchar_t, char, mbstate_t>    : public __codecvt_abstract_base<wchar_t, char, mbstate_t>    {    public:      // Types:      typedef wchar_t			intern_type;      typedef char			extern_type;      typedef mbstate_t			state_type;    protected:      __c_locale			_M_c_locale_codecvt;    public:      static locale::id			id;      explicit      codecvt(size_t __refs = 0);      explicit      codecvt(__c_locale __cloc, size_t __refs = 0);    protected:      virtual      ~codecvt();      virtual result      do_out(state_type& __state, const intern_type* __from,	     const intern_type* __from_end, const intern_type*& __from_next,	     extern_type* __to, extern_type* __to_end,	     extern_type*& __to_next) const;      virtual result      do_unshift(state_type& __state,		 extern_type* __to, extern_type* __to_end,		 extern_type*& __to_next) const;      virtual result      do_in(state_type& __state,	     const extern_type* __from, const extern_type* __from_end,	     const extern_type*& __from_next,	     intern_type* __to, intern_type* __to_end,	     intern_type*& __to_next) const;      virtual      int do_encoding() const throw();      virtual      bool do_always_noconv() const throw();      virtual      int do_length(state_type&, const extern_type* __from,		    const extern_type* __end, size_t __max) const;      virtual int      do_max_length() const throw();    };#endif //_GLIBCXX_USE_WCHAR_T  // 22.2.1.6  Template class codecvt_byname  template<typename _InternT, typename _ExternT, typename _StateT>    class codecvt_byname : public codecvt<_InternT, _ExternT, _StateT>    {    public:      explicit      codecvt_byname(const char* __s, size_t __refs = 0)      : codecvt<_InternT, _ExternT, _StateT>(__refs)      {	if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)	  {	    this->_S_destroy_c_locale(this->_M_c_locale_codecvt);	    this->_S_create_c_locale(this->_M_c_locale_codecvt, __s);	  }      }    protected:      virtual      ~codecvt_byname() { }    };  // Include host and configuration specific partial specializations  // with additional functionality, if possible.#ifdef _GLIBCXX_USE_WCHAR_T  #include <bits/codecvt_specializations.h>#endif#endif // _CODECVT_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -