/home/ntakagi/work/STLport-5.1.5/stlport/stl/_string_io.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 1997-1999
00003  * Silicon Graphics Computer Systems, Inc.
00004  *
00005  * Copyright (c) 1999
00006  * Boris Fomitchev
00007  *
00008  * This material is provided "as is", with absolutely no warranty expressed
00009  * or implied. Any use is at your own risk.
00010  *
00011  * Permission to use or copy this software for any purpose is hereby granted
00012  * without fee, provided the above notices are retained on all copies.
00013  * Permission to modify the code and to distribute modified code is granted,
00014  * provided the above notices are retained, and a notice that the code was
00015  * modified is included with the above copyright notice.
00016  *
00017  */
00018 
00019 #ifndef _STLP_STRING_IO_H
00020 #define _STLP_STRING_IO_H
00021 
00022 #ifndef _STLP_INTERNAL_OSTREAM_H
00023 #  include <stl/_ostream.h>
00024 #endif
00025 
00026 #ifndef _STLP_INTERNAL_ISTREAM
00027 #  include <stl/_istream.h>
00028 #endif
00029 
00030 // I/O.
00031 _STLP_BEGIN_NAMESPACE
00032 
00033 template <class _CharT, class _Traits, class _Alloc>
00034 basic_ostream<_CharT, _Traits>& _STLP_CALL
00035 operator<<(basic_ostream<_CharT, _Traits>& __os,
00036            const basic_string<_CharT,_Traits,_Alloc>& __s);
00037 
00038 #if defined (_STLP_USE_TEMPLATE_EXPRESSION)
00039 
00040 template <class _CharT, class _Traits, class _Alloc, class _Left, class _Right, class _StorageDir>
00041 basic_ostream<_CharT, _Traits>& _STLP_CALL
00042 operator<<(basic_ostream<_CharT, _Traits>& __os,
00043            const _STLP_PRIV __bstr_sum<_CharT, _Traits, _Alloc, _Left, _Right, _StorageDir>& __sum) {
00044   basic_string<_CharT, _Traits, _Alloc> __tmp(__sum);
00045   return __os << __tmp;
00046 }
00047 
00048 #endif /* _STLP_USE_TEMPLATE_EXPRESSION */
00049 
00050 template <class _CharT, class _Traits, class _Alloc>
00051 basic_istream<_CharT, _Traits>&  _STLP_CALL
00052 operator>>(basic_istream<_CharT, _Traits>& __is,
00053            basic_string<_CharT,_Traits,_Alloc>& __s);
00054 
00055 template <class _CharT, class _Traits, class _Alloc>
00056 basic_istream<_CharT, _Traits>& _STLP_CALL
00057 getline(basic_istream<_CharT, _Traits>& __is,
00058         basic_string<_CharT,_Traits,_Alloc>& __s,
00059         _CharT __delim);
00060 
00061 #if !(defined (__BORLANDC__) && !defined (_STLP_USE_OWN_NAMESPACE))
00062 
00063 template <class _CharT, class _Traits, class _Alloc>
00064 inline basic_istream<_CharT, _Traits>& _STLP_CALL
00065 getline(basic_istream<_CharT, _Traits>& __is,
00066         basic_string<_CharT,_Traits,_Alloc>& __s) {
00067   return getline(__is, __s, __is.widen('\n'));
00068 }
00069 #endif
00070 
00071 _STLP_END_NAMESPACE
00072 
00073 #if !defined (_STLP_LINK_TIME_INSTANTIATION)
00074 #  include <stl/_string_io.c>
00075 #endif
00076 
00077 #endif /* _STLP_STRING_IO_H */



Generated on Mon Mar 10 15:32:39 2008 by  doxygen 1.5.1