20#ifndef _STLP_INTERNAL_OSTREAM_H
21#define _STLP_INTERNAL_OSTREAM_H
23#ifndef _STLP_INTERNAL_IOS_H
27#ifndef _STLP_INTERNAL_OSTREAMBUF_ITERATOR_H
31#if !defined (_STLP_NO_UNCAUGHT_EXCEPT_SUPPORT) && !defined (_STLP_INTERNAL_EXCEPTION)
37#if defined (_STLP_USE_TEMPLATE_EXPORT)
38template <
class _CharT,
class _Traits>
44template <
class _CharT,
class _Traits>
52template <
class _CharT,
class _Traits>
56#if defined (_STLP_MSVC) && (_STLP_MSVC >= 1300 && _STLP_MSVC <= 1310)
102# ifndef _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER
109#if defined (_WIN64) || !defined (_STLP_MSVC) || (_STLP_MSVC < 1300)
119#ifdef _STLP_LONG_LONG
125# ifndef _STLP_NO_LONG_DOUBLE
129# ifndef _STLP_NO_BOOL
136 if (this->
rdbuf()->pubsync() == -1)
143 ? this->
rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out)
149 if (this->
rdbuf()->pubseekpos(__pos, ios_base::out) ==
pos_type(-1)) {
158 this->
rdbuf()->pubseekoff(__off, __dir, ios_base::out);
162#if defined (_STLP_USE_TEMPLATE_EXPORT)
165 typedef _Osentry<_CharT, _Traits> sentry;
167# define sentry _Osentry
168 template <
class _CharT,
class _Traits>
170 typedef _Osentry<_CharT, _Traits> _Self;
185 if (_M_str.
flags() & ios_base::unitbuf)
186#if !defined (_STLP_NO_UNCAUGHT_EXCEPT_SUPPORT)
187 if (!uncaught_exception())
192 operator bool()
const {
return _M_ok; }
198#if defined (_STLP_USE_TEMPLATE_EXPORT)
205#if defined (_STLP_USE_TEMPLATE_EXPORT)
208# if !defined (_STLP_NO_WCHAR_T)
217template <
class _CharT,
class _Traits>
224 __str.
tie()->flush();
231template <
class _CharT,
class _Traits>
234{
return __St.
rdbuf(); }
239template <
class _CharT,
class _Traits>
246template <
class _CharT,
class _Traits>
253#if defined (_STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER)
258 __os._M_put_char(
__c);
264 __os._M_put_char(
__c);
270 __os._M_put_char(
__c);
276 __os._M_put_nowiden(__s);
295template <
class _CharT,
class _Traits>
302template <
class _Traits>
309template <
class _Traits>
316template <
class _Traits>
323template <
class _CharT,
class _Traits>
330template <
class _Traits>
337template <
class _Traits>
344template <
class _Traits>
355template <
class _CharT,
class _Traits>
363template <
class _CharT,
class _Traits>
370template <
class _CharT,
class _Traits>
379#if defined (_STLP_EXPOSE_STREAM_IMPLEMENTATION) && !defined (_STLP_LINK_TIME_INSTANTIATION)
#define _STLP_DEFAULT_CONSTRUCTED(_TTp)
basic_streambuf< _CharT, _Traits > *_STLP_CALL __get_ostreambuf(basic_ostream< _CharT, _Traits > &__St)
basic_ostream< _CharT, _Traits > &_STLP_CALL endl(basic_ostream< _CharT, _Traits > &__os)
_STLP_BEGIN_NAMESPACE _STLP_MOVE_TO_PRIV_NAMESPACE bool __init_bostr(basic_ostream< _CharT, _Traits > &__str)
_STLP_MOVE_TO_STD_NAMESPACE basic_ostream< _CharT, _Traits > &_STLP_CALL operator<<(basic_ostream< _CharT, _Traits > &__os, _CharT __c)
basic_ostream< _CharT, _Traits > &_STLP_CALL ends(basic_ostream< _CharT, _Traits > &__os)
basic_streambuf< _CharT, _Traits > * rdbuf() const
basic_ostream< _CharT, _Traits > * tie() const
void setstate(iostate __state)
sentry(basic_ostream< _CharT, _Traits > &__str)
basic_ostream< _CharT, _Traits > & _M_str
_Self & operator=(const _Self &)
ios_base &(_STLP_CALL * __ios_base_fn)(ios_base &)
void _M_put_nowiden(const _CharT *__s)
_Self & operator<<(__ostream_fn __f)
void _M_put_widen(const char *__s)
_Self & seekp(pos_type __pos)
bool _M_copy_unbuffered(basic_streambuf< _CharT, _Traits > *__from, basic_streambuf< _CharT, _Traits > *__to)
void _M_put_char(_CharT __c)
basic_ios< _CharT, _Traits > &(_STLP_CALL * __ios_fn)(basic_ios< _CharT, _Traits > &)
_Traits::int_type int_type
_Self & seekp(off_type __off, ios_base::seekdir __dir)
_Self & operator<<(unsigned char __x)
_Self & operator<<(unsigned long __x)
_Self & put(char_type __c)
bool _M_put_widen_aux(const char *__s, streamsize __n)
_Traits::pos_type pos_type
bool _M_copy_buffered(basic_streambuf< _CharT, _Traits > *__from, basic_streambuf< _CharT, _Traits > *__to)
basic_ios< _CharT, _Traits > _Basic_ios
basic_ostream< _CharT, _Traits > _Self
_Traits::off_type off_type
_Self &(_STLP_CALL * __ostream_fn)(_Self &)
void operator=(const ios_base &)
#define __REINTERPRET_CAST(__x, __y)
#define _STLP_MOVE_TO_STD_NAMESPACE
#define _STLP_EXPORT_TEMPLATE_CLASS
#define _STLP_BEGIN_NAMESPACE
#define _STLP_END_NAMESPACE
#define _STLP_MOVE_TO_PRIV_NAMESPACE