31template <
typename Character>
52 int_type const c{traits::gettche_nolock()};
65 traits::ungettch_nolock(
c);
78template <
typename Character>
103 if (
c != traits::eof)
111 if (
c == traits::eof)
129template <
typename Character>
179 return static_cast<size_t>(
_it -
_first);
194template <
template <
typename>
class InputAdapter,
typename Character>
196 InputAdapter<Character>&
adapter,
201 using char_type = Character;
202 using unsigned_char_type =
typename traits::unsigned_char_type;
203 using int_type =
typename traits::int_type;
211 if (
c == traits::eof)
236template <
size_t CharacterSize>
267 _buffer = _calloc_crt_t(
unsigned char,
buffer_size);
269 return _buffer.get();
281 mutable __crt_unique_heap_ptr<unsigned char>
_buffer;
284template <
typename Un
signedCharacter>
294 void set(UnsignedCharacter
const c)
throw()
299 bool test(UnsignedCharacter
const c)
const throw()
318 for (
unsigned char* it{
first}; it !=
last; ++it)
320 *it ^=
static_cast<unsigned char>(-1);
382 _ASSERTE((
"Unexpected length specifier",
false));
396 _ASSERTE((
"Unexpected length specifier",
false));
423 static unsigned char const constraints
428 { 1 , 0 , 1 , 1 , 1 , 0 , 0 , 0 , 1 , 0 , 0 , 1 },
429 { 1 , 0 , 1 , 1 , 1 , 0 , 0 , 0 , 1 , 0 , 0 , 1 },
430 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 },
431 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 },
432 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 },
433 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 },
434 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 },
435 { 1 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 },
436 { 1 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 },
437 { 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 1 , 1 , 0 }
440 return constraints[
static_cast<size_t>(
mode)][
static_cast<size_t>(
length)] != 0;
450template <
typename Character>
654 reinterpret_cast<char_type**
>(&width_end),
800 return c ==
'C' ||
c ==
'S';
805 if (
c ==
'C' ||
c ==
'S')
1064template <
typename Character,
typename InputAdapter>
1075 InputAdapter
const& input_adapter,
1112 if (
c == traits::eof)
1169 if (
c == traits::eof)
1185 if (
isleadbyte(
static_cast<unsigned char>(initial_character)) == 0)
1239 default:
return false;
1243 template <
typename BufferCharacter>
1286 for (;
width == 0 || width_consumed !=
width; ++width_consumed)
1301 if (buffer_remaining == 0)
1314 if (width_consumed == 0)
1324 width_consumed !=
width &&
1337 *buffer_pointer =
'\0';
1349 char*& buffer_pointer,
1350 size_t& buffer_remaining,
1357 *buffer_pointer++ =
c;
1365 char*& buffer_pointer,
1366 size_t& buffer_remaining,
1372 int narrow_count{0};
1375 buffer_pointer += narrow_count;
1376 buffer_remaining -= narrow_count;
1381 int narrow_count{0};
1382 if (
wctomb_s(&narrow_count, buffer_pointer, buffer_remaining,
c) ==
ERANGE)
1388 if (narrow_count > 0)
1390 buffer_pointer += narrow_count;
1391 buffer_remaining -= narrow_count;
1402 size_t& buffer_remaining,
1409 char narrow_temp[2]{
c,
'\0'};
1415 wchar_t wide_temp{
'?'};
1419 *buffer_pointer++ =
c;
1428 size_t& buffer_remaining,
1435 *buffer_pointer++ =
c;
1440 template <
typename BufferCharacter>
1444 size_t const buffer_remaining
1456 template <
typename BufferCharacter>
1472 if (
c == traits::eof)
1484 if (
c >=
'\t' &&
c <=
'\r')
1509 bool succeeded{
false};
1525 template <
typename FloatingType>
1528 bool succeeded{
false};
1529 FloatingType
value{};
1550 case sizeof(
float):
return process_floating_point_specifier_t<float >();
1551 case sizeof(
double):
return process_floating_point_specifier_t<double>();
1552 default:
return false;
1576 _ASSERTE((
"Unexpected length specifier",
false));
1581 template <
typename FloatingType>
1584 using integer_type =
uintn_t<
sizeof(FloatingType)>;
1594 *
static_cast<integer_type*
>(result_pointer) =
reinterpret_cast<integer_type
const&
>(
value);
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter upper_bound(_ForwardIter __first, _ForwardIter __last, const _Tp &__val)
_STLP_MOVE_TO_STD_NAMESPACE _ForwardIter lower_bound(_ForwardIter __first, _ForwardIter __last, const _Tp &__val)
unsigned short int uint16_t
FILE * public_stream() const
#define _CRT_UNBOUNDED_BUFFER_SIZE
#define _ERRCHECK_EINVAL_ERANGE(e)
#define _RESET_STRING(_String, _Size)
#define _VALIDATE_RETURN(expr, errorcode, retexpr)
#define _CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY
#define _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS
#define _CRT_INTERNAL_SCANF_SECURECRT
result_buffer_count char *const _In_ int const _In_ bool const _In_ unsigned const _In_ STRFLT const _In_ bool const _Inout_ __crt_cached_ptd_host &ptd throw()
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
__kernel_ptrdiff_t ptrdiff_t
GLint GLint GLsizei width
GLuint GLsizei GLsizei * length
_CRTIMP int __cdecl _mbtowc_l(_Pre_notnull_ _Post_z_ wchar_t *_DstCh, _In_reads_bytes_opt_(_SrcSizeInBytes) _Pre_opt_z_ const char *_SrcCh, _In_ size_t _SrcSizeInBytes, _In_opt_ _locale_t _Locale)
__MINGW_EXTENSION typedef long long intmax_t
static unsigned int number
static const char mbstate_t *static wchar_t const char mbstate_t *static const wchar_t int *static double
static float(__cdecl *square_half_float)(float x
input_adapter_character_source< InputAdapter > __cdecl make_input_adapter_character_source(InputAdapter *const input_adapter, uint64_t const width, bool *const succeeded)
__forceinline unsigned __cdecl parse_digit(char const c)
__forceinline bool __cdecl is_space(char const c, _locale_t const locale)
SLD_STATUS __cdecl parse_floating_point(_locale_t const locale, CharacterSource source, FloatingType *const result)
#define UNREFERENCED_PARAMETER(P)
static void skip_whitespace()
wchar_t const *const size_t const buffer_size
errno_t __cdecl wctomb_s(int *const return_value, char *const destination, size_t const destination_count, wchar_t const wchar)
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
size_t const buffer_count