|
virtual result | do_in (_Statype &_State, const _Byte *_First1, const _Byte *_Last1, const _Byte *&_Mid1, _Elem *_First2, _Elem *_Last2, _Elem *&_Mid2) const |
|
virtual result | do_out (_Statype &_State, const _Elem *_First1, const _Elem *_Last1, const _Elem *&_Mid1, _Byte *_First2, _Byte *_Last2, _Byte *&_Mid2) const |
|
virtual result | do_unshift (_Statype &_State, _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 = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
_STD codecvt< _Elem, char, _Statype > _Mybase
Definition: xjis:99
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
45 unsigned long _Lo = 0;
51 unsigned long _Mid = (_Hi + _Lo) / 2;
static const unsigned short _Dbvalid[0x1adf]
Definition: jis:83
static const unsigned short _Dbtw[0x1adf]
Definition: jis:84
_Check_return_ _In_ wchar_t _Ch
Definition: vcruntime_string.h:89
static const unsigned short _Btw[0xa4]
Definition: jis:82
template<class _Elem , unsigned long _Maxcode = 0xffff>
75 unsigned long _Lo = 0;
81 unsigned long _Mid = (_Hi + _Lo) / 2;
_Check_return_ _In_ wchar_t _Ch
Definition: vcruntime_string.h:89
static const unsigned short _Wvalid[0x1b20]
Definition: jis:85
static const unsigned short _Btw[0xa4]
Definition: jis:82
static const unsigned short _Wtb[0x1b20]
Definition: jis:86
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
120 unsigned long _Maxc = _Maxcode;
121 char *_Pstate = (
char *)&
_State;
122 result _Ans = _Mybase::partial;
126 for (; _Mid1 != _Last1 && _Mid2 != _Last2; )
128 unsigned char _By = (
unsigned char)*_Mid1;
133 else if (_Last1 - _Mid1 < 4)
135 else if (_Mid1[1] ==
'('
136 && (_Mid1[2] ==
'B' || _Mid1[2] ==
'J')
143 else if (_Mid1[1] ==
'$'
144 && (_Mid1[2] ==
'B' || _Mid1[2] ==
'@'))
145 if (_Last1 - _Mid1 < 5)
154 return (_Mybase::error);
159 else if (_By < 0x21 || 0x7e < _By)
160 return (_Mybase::error);
161 else if (_Last1 - _Mid1 < 2)
163 else if ((_By = *++_Mid1) < 0x21 || 0x7e < _By)
164 return (_Mybase::error);
166 _Ch = (
unsigned short)(_Ch << 8 | _By);
169 return (_Mybase::error);
171 *_Mid2++ = (_Elem)_Ch;
_Mybase::result result
Definition: xjis:100
_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
unsigned char
Definition: mbstring.h:107
bool _Jis_to_ucs(unsigned short &_Ch) const
Definition: xjis:34
#define _ESC_CODE
Definition: xjis:24
template<class _Elem , unsigned long _Maxcode = 0xffff>
279 for (; _Wchars <
_Count && _First1 != _Last1; )
285 switch (
do_in(_Mystate, _First1, _Last1, _Mid1,
286 &_Ch, &_Ch + 1, _Mid2))
288 case _Mybase::noconv:
289 return ((
int)(_Wchars + (_Last1 - _First1)));
292 if (_Mid2 == &_Ch + 1)
298 return ((
int)_Wchars);
302 return ((
int)_Wchars);
char _Byte
Definition: xjis:101
_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
_Diff _Count
Definition: algorithm:1941
virtual result do_in(_Statype &_State, const _Byte *_First1, const _Byte *_Last1, const _Byte *&_Mid1, _Elem *_First2, _Elem *_Last2, _Elem *&_Mid2) const
Definition: xjis:116
_CSTD mbstate_t _Statype
Definition: codecvt:28
template<class _Elem , unsigned long _Maxcode = 0xffff>
template<class _Elem , unsigned long _Maxcode = 0xffff>
182 unsigned long _Maxc = _Maxcode;
183 char *_Pstate = (
char *)&
_State;
187 for (; _Mid1 != _Last1 && _Mid2 != _Last2; )
189 unsigned long _Uch = (
unsigned long)*_Mid1;
190 unsigned short _Ch = (
unsigned short)_Uch;
193 return (_Mybase::error);
198 return (_Mybase::error);
199 else if (*_Pstate == 0)
201 else if (_Last2 - _Mid2 < 4)
210 *_Mid2++ = (
_Byte)_Ch;
216 if (_Last2 - _Mid2 < 2)
219 else if (_Last2 - _Mid2 < 5)
229 unsigned char _By = (
unsigned char)(_Ch >> 8);
231 if (_By < 0x21 || 0x7e < _By)
232 return (_Mybase::error);
233 *_Mid2++ = (
_Byte)_By;
235 _By = (
unsigned char)_Ch;
236 if (_By < 0x21 || 0x7e < _By)
237 return (_Mybase::error);
238 *_Mid2++ = (
_Byte)_By;
242 return (_First1 == _Mid1 ? _Mybase::partial : _Mybase::ok);
char _Byte
Definition: xjis:101
_In_ long
Definition: corecrt_wstdlib.h:88
_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
unsigned char
Definition: mbstring.h:107
bool _Ucs_to_jis(unsigned short &_Ch) const
Definition: xjis:68
#define _ESC_CODE
Definition: xjis:24
template<class _Elem , unsigned long _Maxcode = 0xffff>
248 char *_Pstate = (
char *)&
_State;
268 return (_Mybase::ok);
270 return (_Mybase::partial);
_In_ size_t _Deref_pre_opt_z_ char const _In_ size_t _Inout_ mbstate_t * _State
Definition: wchar.h:78
#define _ESC_CODE
Definition: xjis:24
The documentation for this class was generated from the following file: