|
virtual result | do_in (_Statype &, const _Byte *_First1, const _Byte *_Last1, const _Byte *&_Mid1, _Elem *_First2, _Elem *_Last2, _Elem *&_Mid2) const |
|
virtual result | do_out (_Statype &, const _Elem *_First1, const _Elem *_Last1, const _Elem *&_Mid1, _Byte *_First2, _Byte *_Last2, _Byte *&_Mid2) const |
|
virtual result | do_unshift (_Statype &, _Byte *_First2, _Byte *, _Byte *&_Mid2) const |
|
virtual int | do_length (_Statype &_State, const _Byte *_First1, const _Byte *_Last1, size_t _Count) const _THROW0() |
|
virtual bool | do_always_noconv () const _THROW0() |
|
virtual int | do_max_length () const _THROW0() |
|
virtual int | do_encoding () const _THROW0() |
|
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
_STD codecvt< _Elem, char, _Statype > _Mybase
Definition: sjis_0208:27
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
48 unsigned long _Maxc = _Maxcode;
49 static unsigned char _Xff = 0xff;
53 for (; _Mid1 != _Last1 && _Mid2 != _Last2; )
55 unsigned char _By = (
unsigned char)*_Mid1;
56 unsigned short _Ch = _By;
59 || (0xa0 <= _By && _By <= 0xdf)
60 || (0xf0 <= _By && _By <= _Xff))
62 else if (_Last1 - _Mid1 < 2)
66 unsigned char _By2 = *++_Mid1;
68 if ((_By2 < 0x40 || 0x7e < _By2)
69 && (_By2 < 0x80 && 0xfc < _By2))
70 return (_Mybase::error);
79 _Ch = (
unsigned short)(_Ch
81 else if (_By2 <= 0x7e)
82 _Ch = (
unsigned short)(_Ch
85 _Ch = (
unsigned short)(_Ch
90 return (_Mybase::error);
92 *_Mid2++ = (_Elem)_Ch;
95 return (_First1 == _Mid1 ? _Mybase::partial : _Mybase::ok);
_Check_return_ _In_ wchar_t _Ch
Definition: vcruntime_string.h:89
unsigned char
Definition: mbstring.h:107
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
155 for (; _Wchars <
_Count && _First1 != _Last1; )
161 switch (
do_in(_Mystate, _First1, _Last1, _Mid1,
162 &_Ch, &_Ch + 1, _Mid2))
164 case _Mybase::noconv:
165 return ((
int)(_Wchars + (_Last1 - _First1)));
168 if (_Mid2 == &_Ch + 1)
174 return ((
int)_Wchars);
178 return ((
int)_Wchars);
_Check_return_ _In_ wchar_t _Ch
Definition: vcruntime_string.h:89
_In_ size_t _Deref_pre_opt_z_ char const _In_ size_t _Inout_ mbstate_t * _State
Definition: wchar.h:78
virtual result do_in(_Statype &, const _Byte *_First1, const _Byte *_Last1, const _Byte *&_Mid1, _Elem *_First2, _Elem *_Last2, _Elem *&_Mid2) const
Definition: sjis_0208:44
_Diff _Count
Definition: algorithm:1941
char _Byte
Definition: sjis_0208:29
_CSTD mbstate_t _Statype
Definition: codecvt:28
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
102 unsigned long _Maxc = _Maxcode;
106 for (; _Mid1 != _Last1 && _Mid2 != _Last2; )
108 unsigned long _Ch = (
unsigned long)*_Mid1;
109 static unsigned char _Xff = 0xff;
112 return (_Mybase::error);
115 || (0xa0 <= _Ch && _Ch <= 0xdf)
116 || (0xf0 <= _Ch && _Ch <= _Xff))
117 *_Mid2++ = (
_Byte)_Ch;
118 else if (_Last2 - _Mid2 < 2)
122 unsigned char _By0 = (
unsigned char)(_Ch >> 8);
123 unsigned char _By1 = (
unsigned char)_Ch;
124 if (_By0 < 0x21 || 0x7e < _By0
125 || _By1 < 0x21 || 0x7e < _By1)
126 return (_Mybase::error);
128 *_Mid2++ = (
_Byte)((_By0 + 1) / 2
129 + (_By0 < 0x5f ? 0x70 : 0xb0));
131 *_Mid2++ = (
_Byte)(_By1 + (0x5f <= _By1 ? 0x20 : 0x1f));
133 *_Mid2++ = (
_Byte)(_By1 + 0x7e);
138 return (_First1 == _Mid1 ? _Mybase::partial : _Mybase::ok);
_In_ long
Definition: corecrt_wstdlib.h:88
_Check_return_ _In_ wchar_t _Ch
Definition: vcruntime_string.h:89
unsigned char
Definition: mbstring.h:107
char _Byte
Definition: sjis_0208:29
template<class _Elem , unsigned long _Maxcode = 0x7e7e>
146 return (_Mybase::ok);
The documentation for this class was generated from the following file: