43 context._is_split_character =
true;
44 context._leftover_low_order_byte =
static_cast<unsigned char>(*
stream->_ptr);
48 context._is_split_character =
false;
49 context._leftover_low_order_byte = 0;
76 return static_cast<unsigned char>(*
stream->_ptr++);
87 if (
context._is_split_character)
92 unsigned char high_order_byte =
static_cast<unsigned char>(*
stream->_ptr);
93 wchar_t result = (high_order_byte << 8) |
context._leftover_low_order_byte;
121template <
typename Character>
129 return stdio_traits::eof;
134 return stdio_traits::eof;
140 if (!
stream.has_any_buffer())
152 return stdio_traits::eof;
167 stream.has_crt_buffer() &&
static unsigned char read_character_nolock(__crt_stdio_stream const stream, int, char)
static bool is_buffer_valid_nolock(__crt_stdio_stream const stream, char)
static int __cdecl common_refill_and_read_nolock(__crt_stdio_stream const stream)
int __cdecl __acrt_stdio_refill_and_read_wide_nolock(FILE *const stream)
static int get_context_nolock(__crt_stdio_stream const, char)
int __cdecl __acrt_stdio_refill_and_read_narrow_nolock(FILE *const stream)
void __cdecl __acrt_stdio_allocate_buffer_nolock(FILE *const public_stream)
#define _VALIDATE_RETURN(expr, errorcode, retexpr)
_Check_return_ _CRTIMP int __cdecl _fileno(_In_ FILE *_File)
_Check_return_ _CRTIMP int __cdecl _read(_In_ int _FileHandle, _Out_writes_bytes_(_MaxCharCount) void *_DstBuf, _In_ unsigned int _MaxCharCount)
unsigned char _leftover_low_order_byte