56 char *_Pstate = (
char *)&_State;
61 for (; _Bytes_per_word <= _Last1 - _Mid1 && _Mid2 != _Last2; )
63 unsigned char *_Ptr = (
unsigned char *)_Mid1;
64 unsigned long _Ch = 0;
67 for (_Count = _Bytes_per_word; 0 <
_Count; )
68 _Ch = _Ch << 8 | _Ptr[--_Count];
70 for (_Count = 0; _Count < _Bytes_per_word; ++
_Count)
71 _Ch = _Ch << 8 | _Ptr[_Count];
74 unsigned char _Default_endian =
79 for (_Count = _Bytes_per_word; 0 <
_Count; )
80 _Ch = _Ch << 8 | _Ptr[--_Count];
82 for (_Count = 0; _Count < _Bytes_per_word; ++
_Count)
83 _Ch = _Ch << 8 | _Ptr[_Count];
86 && _Ch != (0xfffe0000 >> 8 * (4 - _Bytes_per_word))))
87 *_Pstate = _Default_endian;
90 _Mid1 += _Bytes_per_word;
91 *_Pstate = (char)(_Ch == 0xfeff
93 : (
unsigned char)(3 - _Default_endian));
95 _First2, _Last2, _Mid2);
97 if (_Ans == _Mybase::partial)
106 _Mid1 += _Bytes_per_word;
108 return (_Mybase::error);
109 *_Mid2++ = (_Elem)_Ch;
112 return (_First1 == _Mid1 ? _Mybase::partial : _Mybase::ok);
_Check_return_ _In_ int _Mode
Definition: io.h:338
virtual result do_in(_Statype &_State, const _Byte *_First1, const _Byte *_Last1, const _Byte *&_Mid1, _Elem *_First2, _Elem *_Last2, _Elem *&_Mid2) const
Definition: one_one:52
#define _BIG_FIRST
Definition: codecvt:18
_Mybase::result result
Definition: one_one:34
_In_ size_t _In_ unsigned int _Ch
Definition: mbstring.h:161
_Diff _Count
Definition: algorithm:1941
#define _LITTLE_FIRST
Definition: codecvt:17