Add .gitattributes and .gitignore files and normalize line endings in the repository...
[reactos.git] / sdk / include / c++ / stlport / iostream.h
1 /*
2 * Copyright (c) 1999
3 * Boris Fomitchev
4 *
5 * This material is provided "as is", with absolutely no warranty expressed
6 * or implied. Any use is at your own risk.
7 *
8 * Permission to use or copy this software for any purpose is hereby granted
9 * without fee, provided the above notices are retained on all copies.
10 * Permission to modify the code and to distribute modified code is granted,
11 * provided the above notices are retained, and a notice that the code was
12 * modified is included with the above copyright notice.
13 *
14 */
15
16 #ifndef _STLP_IOSTREAM_H
17 #define _STLP_IOSTREAM_H
18
19 #ifndef _STLP_OUTERMOST_HEADER_ID
20 # define _STLP_OUTERMOST_HEADER_ID 0x2035
21 # include <stl/_prolog.h>
22 #endif
23
24 #include <iostream>
25
26 // Those should be included all separately, as they do contain using declarations
27 #include <streambuf.h>
28 #include <ostream.h>
29 #include <istream.h>
30
31 #ifndef _STLP_HAS_NO_NAMESPACES
32
33 # ifdef _STLP_BROKEN_USING_DIRECTIVE
34 _STLP_USING_NAMESPACE(stlport)
35 # else
36 using _STLP_STD::cin;
37 using _STLP_STD::cout;
38 using _STLP_STD::clog;
39 using _STLP_STD::cerr;
40 using _STLP_STD::iostream;
41 # ifndef _STLP_NO_WCHAR_T
42 using _STLP_STD::wcin;
43 using _STLP_STD::wcout;
44 using _STLP_STD::wclog;
45 using _STLP_STD::wcerr;
46 # endif
47 # endif
48 #endif /* _STLP_HAS_NO_NAMESPACES */
49
50 // Obsolete classes for old-style backwards compatibility
51
52
53 class istream_withassign : public istream {
54 public:
55 istream_withassign() : istream((streambuf*)0) {}
56 ~istream_withassign() {}
57
58 istream_withassign& operator=(istream& __s) {
59 ios::init(__s.rdbuf());
60 return *this;
61 }
62 istream_withassign& operator=(streambuf* __s) {
63 ios::init(__s);
64 return *this;
65 }
66 };
67
68 class ostream_withassign : public ostream {
69 public:
70 ostream_withassign() : ostream((streambuf*)0) {}
71 ~ostream_withassign() {}
72
73 ostream_withassign& operator=(ostream& __s) {
74 ios::init(__s.rdbuf());
75 return *this;
76 }
77 ostream_withassign& operator=(streambuf* __s) {
78 ios::init(__s);
79 return *this;
80 }
81 };
82
83 class iostream_withassign : public iostream {
84 public:
85 iostream_withassign() : iostream((streambuf*)0) {}
86 ~iostream_withassign() {}
87 iostream_withassign & operator=(ios& __i) {
88 ios::init(__i.rdbuf());
89 return *this;
90 }
91 iostream_withassign & operator=(streambuf* __s) {
92 ios::init(__s);
93 return *this;
94 }
95 } ;
96
97 #if (_STLP_OUTERMOST_HEADER_ID == 0x2035)
98 # include <stl/_epilog.h>
99 # undef _STLP_OUTERMOST_HEADER_ID
100 #endif
101
102 #endif /* _STLP_IOSTREAM_H */
103
104 // Local Variables:
105 // mode:C++
106 // End: