2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
authorGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Fri, 23 Aug 2002 06:45:48 +0000 (06:45 -0000)
committerGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Fri, 23 Aug 2002 06:45:48 +0000 (06:45 -0000)
* StreamReader.cs: implemented NullStreamReader.

svn path=/trunk/mcs/; revision=6934

mcs/class/corlib/System.IO/ChangeLog
mcs/class/corlib/System.IO/StreamReader.cs

index 7f2836d5b7f6ca3748e5af46ffd6c2b2407835c6..6095bb20620ab0d7f042b49e98ae8e85f537d8f6 100644 (file)
@@ -1,3 +1,7 @@
+2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * StreamReader.cs: implemented NullStreamReader.
+
 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
 
        * Path.cs (GetDirectoryName): Fix for filenames with size = 1
index 3a1fca834d6faea04e371da32db8a5a39a6602fc..a13ef1809cb91398fab705cb3621472214f2f532 100644 (file)
@@ -32,8 +32,41 @@ namespace System.IO {
 \r
                private Stream internalStream;\r
 \r
-               [MonoTODO("Make Read methods return 0, etc.")]\r
                private class NullStreamReader : StreamReader {\r
+                       public override int Peek ()\r
+                       {\r
+                               return -1;\r
+                       }\r
+\r
+                       public override int Read ()\r
+                       {\r
+                               return -1;\r
+                       }\r
+\r
+                       public override int Read (char[] buffer, int index, int count)\r
+                       {\r
+                               return 0;\r
+                       }\r
+\r
+                       public override string ReadLine ()\r
+                       {\r
+                               return null;\r
+                       }\r
+\r
+                       public override string ReadToEnd ()\r
+                       {\r
+                               return String.Empty;\r
+                       }\r
+\r
+                       public override Stream BaseStream\r
+                       {\r
+                               get { return Stream.Null; }\r
+                       }\r
+\r
+                       public override Encoding CurrentEncoding\r
+                       {\r
+                               get { return Encoding.Unicode; }\r
+                       }\r
                }\r
 \r
                public new static readonly StreamReader Null = (StreamReader)(new NullStreamReader());\r