1
2
3
4
5
6 using System.IO;
7
8 namespace System
9 {
10 public static class Console
11 {
12 static nothrow Console() :
13 in(SharedPtr<Stream>(new FileStream(stdin))),
14 out(SharedPtr<Stream>(new FileStream(stdout))),
15 err(SharedPtr<Stream>(new FileStream(stderr)))
16 {
17 if (!in.GetStream()->IsConsole())
18 {
19 in = StreamReader(SharedPtr<Stream>(new BufferedStream(SharedPtr<Stream>(new FileStream(stdin)))));
20 }
21 if (!out.GetStream()->IsConsole())
22 {
23 out = StreamWriter(SharedPtr<Stream>(new BufferedStream(SharedPtr<Stream>(new FileStream(stdout)))));
24 }
25 if (!err.GetStream()->IsConsole())
26 {
27 err = StreamWriter(SharedPtr<Stream>(new BufferedStream(SharedPtr<Stream>(new FileStream(stderr)))));
28 }
29 }
30 public static void Write(const char* s)
31 {
32 out.Write(s);
33 }
34 public static void Write(const wchar* s)
35 {
36 out.Write(s);
37 }
38 public static void Write(const uchar* s)
39 {
40 out.Write(s);
41 }
42 public static void Write(const string& s)
43 {
44 out.Write(s);
45 }
46 public static void Write(const wstring& s)
47 {
48 out.Write(s);
49 }
50 public static void Write(const ustring& s)
51 {
52 out.Write(s);
53 }
54 public static void Write(bool b)
55 {
56 out.Write(b);
57 }
58 public static void Write(char c)
59 {
60 out.Write(c);
61 }
62 public static void Write(wchar w)
63 {
64 out.Write(w);
65 }
66 public static void Write(uchar u)
67 {
68 out.Write(u);
69 }
70 public static void Write(sbyte s)
71 {
72 out.Write(s);
73 }
74 public static void Write(byte b)
75 {
76 out.Write(b);
77 }
78 public static void Write(short s)
79 {
80 out.Write(s);
81 }
82 public static void Write(ushort u)
83 {
84 out.Write(u);
85 }
86 public static void Write(int i)
87 {
88 out.Write(i);
89 }
90 public static void Write(uint u)
91 {
92 out.Write(u);
93 }
94 public static void Write(long l)
95 {
96 out.Write(l);
97 }
98 public static void Write(ulong u)
99 {
100 out.Write(u);
101 }
102 public static void Write(float f)
103 {
104 out.Write(f);
105 }
106 public static void Write(double d)
107 {
108 out.Write(d);
109 }
110 public static void Write(const Date& date)
111 {
112 out.Write(date);
113 }
114 public static void Write(const DateTime& dateTime)
115 {
116 out.Write(dateTime);
117 }
118 public static void WriteLine()
119 {
120 out.WriteLine();
121 }
122 public static void WriteLine(const char* s)
123 {
124 out.WriteLine(s);
125 }
126 public static void WriteLine(const wchar* s)
127 {
128 out.WriteLine(s);
129 }
130 public static void WriteLine(const uchar* s)
131 {
132 out.WriteLine(s);
133 }
134 public static void WriteLine(const string& s)
135 {
136 out.WriteLine(s);
137 }
138 public static void WriteLine(const wstring& s)
139 {
140 out.WriteLine(s);
141 }
142 public static void WriteLine(const ustring& s)
143 {
144 out.WriteLine(s);
145 }
146 public static void WriteLine(bool b)
147 {
148 out.WriteLine(b);
149 }
150 public static void WriteLine(char x)
151 {
152 out.WriteLine(x);
153 }
154 public static void WriteLine(wchar x)
155 {
156 out.WriteLine(x);
157 }
158 public static void WriteLine(uchar x)
159 {
160 out.WriteLine(x);
161 }
162 public static void WriteLine(sbyte s)
163 {
164 out.WriteLine(s);
165 }
166 public static void WriteLine(byte b)
167 {
168 out.WriteLine(b);
169 }
170 public static void WriteLine(short s)
171 {
172 out.WriteLine(s);
173 }
174 public static void WriteLine(ushort u)
175 {
176 out.WriteLine(u);
177 }
178 public static void WriteLine(int i)
179 {
180 out.WriteLine(i);
181 }
182 public static void WriteLine(uint u)
183 {
184 out.WriteLine(u);
185 }
186 public static void WriteLine(long l)
187 {
188 out.WriteLine(l);
189 }
190 public static void WriteLine(ulong u)
191 {
192 out.WriteLine(u);
193 }
194 public static void WriteLine(float f)
195 {
196 out.WriteLine(f);
197 }
198 public static void WriteLine(double d)
199 {
200 out.WriteLine(d);
201 }
202 public static void WriteLine(const Date& date)
203 {
204 out.WriteLine(date);
205 }
206 public static void WriteLine(const DateTime& dateTime)
207 {
208 out.WriteLine(dateTime);
209 }
210 public static int Read()
211 {
212 return in.Read();
213 }
214 public static string ReadLine()
215 {
216 return in.ReadLine();
217 }
218 public static string ReadToEnd()
219 {
220 return in.ReadToEnd();
221 }
222 public static nothrow StreamReader& In()
223 {
224 return in;
225 }
226 public static nothrow StreamWriter& Out()
227 {
228 return out;
229 }
230 public static nothrow StreamWriter& Error()
231 {
232 return err;
233 }
234 public static nothrow void SetIn(StreamReader&& in_)
235 {
236 in = in_;
237 }
238 public static nothrow void SetOut(StreamWriter&& out_)
239 {
240 out = out_;
241 }
242 public static nothrow void SetError(StreamWriter&& err_)
243 {
244 err = err_;
245 }
246 private static StreamReader in;
247 private static StreamWriter out;
248 private static StreamWriter err;
249 }
250
251 public class Endl
252 {
253 public nothrow Endl()
254 {
255 }
256 }
257
258 public nothrow Endl endl()
259 {
260 return Endl();
261 }
262 }