mirror of
https://github.com/reactos/wine.git
synced 2025-02-19 20:31:35 +00:00
msvcp90: Added basic_istream::operator>>(char&) implementation.
This commit is contained in:
parent
7a8f0994df
commit
c1ae61b07f
@ -5755,6 +5755,30 @@ basic_istream_char* __cdecl basic_istream_char_get_bstr(
|
||||
return istream;
|
||||
}
|
||||
|
||||
/* ??$?5DU?$char_traits@D@std@@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAD@Z */
|
||||
/* ??$?5DU?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@AEAD@Z */
|
||||
basic_istream_char* __cdecl basic_istream_char_read_ch(basic_istream_char *istream, char *ch)
|
||||
{
|
||||
IOSB_iostate state = IOSTATE_failbit;
|
||||
int c = 0;
|
||||
|
||||
TRACE("(%p %p)\n", istream, ch);
|
||||
|
||||
if(basic_istream_char_sentry_create(istream, FALSE)) {
|
||||
c = basic_streambuf_char_sbumpc(basic_ios_char_rdbuf_get(
|
||||
basic_istream_char_get_basic_ios(istream)));
|
||||
if(c != EOF) {
|
||||
state = IOSTATE_goodbit;
|
||||
*ch = c;
|
||||
}
|
||||
}
|
||||
basic_istream_char_sentry_destroy(istream);
|
||||
|
||||
basic_ios_char_setstate(basic_istream_char_get_basic_ios(istream),
|
||||
state | (c==EOF ? IOSTATE_eofbit : IOSTATE_goodbit));
|
||||
return istream;
|
||||
}
|
||||
|
||||
/* Caution: basic_istream uses virtual inheritance. */
|
||||
static inline basic_ios_wchar* basic_istream_wchar_get_basic_ios(basic_istream_wchar *this)
|
||||
{
|
||||
@ -6783,6 +6807,30 @@ basic_istream_wchar* __cdecl basic_istream_wchar_get_bstr(
|
||||
return istream;
|
||||
}
|
||||
|
||||
/* ??$?5_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AAV10@AA_W@Z */
|
||||
/* ??$?5_WU?$char_traits@_W@std@@@std@@YAAEAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AEAV10@AEA_W@Z */
|
||||
basic_istream_wchar* __cdecl basic_istream_wchar_read_ch(basic_istream_wchar *istream, wchar_t *ch)
|
||||
{
|
||||
IOSB_iostate state = IOSTATE_failbit;
|
||||
unsigned short c = 0;
|
||||
|
||||
TRACE("(%p %p)\n", istream, ch);
|
||||
|
||||
if(basic_istream_wchar_sentry_create(istream, FALSE)) {
|
||||
c = basic_streambuf_wchar_sbumpc(basic_ios_wchar_rdbuf_get(
|
||||
basic_istream_wchar_get_basic_ios(istream)));
|
||||
if(c != WEOF) {
|
||||
state = IOSTATE_goodbit;
|
||||
*ch = c;
|
||||
}
|
||||
}
|
||||
basic_istream_wchar_sentry_destroy(istream);
|
||||
|
||||
basic_ios_wchar_setstate(basic_istream_wchar_get_basic_ios(istream),
|
||||
state | (c==WEOF ? IOSTATE_eofbit : IOSTATE_goodbit));
|
||||
return istream;
|
||||
}
|
||||
|
||||
/* ??0?$basic_iostream@DU?$char_traits@D@std@@@std@@QAE@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z */
|
||||
/* ??0?$basic_iostream@DU?$char_traits@D@std@@@std@@QEAA@PEAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(basic_iostream_char_ctor, 12)
|
||||
|
@ -1,5 +1,5 @@
|
||||
@ stub -arch=win32 ??$?5DU?$char_traits@D@std@@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAD@Z
|
||||
@ stub -arch=win64 ??$?5DU?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@AEAD@Z
|
||||
@ cdecl -arch=win32 ??$?5DU?$char_traits@D@std@@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAD@Z(ptr ptr) basic_istream_char_read_ch
|
||||
@ cdecl -arch=win64 ??$?5DU?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@AEAD@Z(ptr ptr) basic_istream_char_read_ch
|
||||
@ stub -arch=win32 ??$?5DU?$char_traits@D@std@@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@PAD@Z
|
||||
@ stub -arch=win64 ??$?5DU?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@PEAD@Z
|
||||
@ cdecl -arch=win32 ??$?5DU?$char_traits@D@std@@V?$allocator@D@1@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z(ptr ptr) basic_istream_char_get_bstr
|
||||
@ -36,8 +36,8 @@
|
||||
@ stub -arch=win64 ??$?5U?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@PEAC@Z
|
||||
@ stub -arch=win32 ??$?5U?$char_traits@D@std@@@std@@YAAAV?$basic_istream@DU?$char_traits@D@std@@@0@AAV10@PAE@Z
|
||||
@ stub -arch=win64 ??$?5U?$char_traits@D@std@@@std@@YAAEAV?$basic_istream@DU?$char_traits@D@std@@@0@AEAV10@PEAE@Z
|
||||
@ stub -arch=win32 ??$?5_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AAV10@AA_W@Z
|
||||
@ stub -arch=win64 ??$?5_WU?$char_traits@_W@std@@@std@@YAAEAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AEAV10@AEA_W@Z
|
||||
@ cdecl -arch=win32 ??$?5_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AAV10@AA_W@Z(ptr ptr) basic_istream_wchar_read_ch
|
||||
@ cdecl -arch=win64 ??$?5_WU?$char_traits@_W@std@@@std@@YAAEAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AEAV10@AEA_W@Z(ptr ptr) basic_istream_wchar_read_ch
|
||||
@ stub -arch=win32 ??$?5_WU?$char_traits@_W@std@@@std@@YAAAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AAV10@PA_W@Z
|
||||
@ stub -arch=win64 ??$?5_WU?$char_traits@_W@std@@@std@@YAAEAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AEAV10@PEA_W@Z
|
||||
@ cdecl -arch=win32 ??$?5_WU?$char_traits@_W@std@@V?$allocator@_W@1@@std@@YAAAV?$basic_istream@_WU?$char_traits@_W@std@@@0@AAV10@AAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@0@@Z(ptr ptr) basic_istream_wchar_get_bstr
|
||||
|
Loading…
x
Reference in New Issue
Block a user