[Bind] Clean up BindStreamWriter implementation
authorthefiddler <stapostol@gmail.com>
Thu, 13 Mar 2014 17:44:36 +0000 (18:44 +0100)
committerthefiddler <stapostol@gmail.com>
Thu, 13 Mar 2014 17:44:36 +0000 (18:44 +0100)
Instead of inheriting and overriding StreamWriter methods, it now
forwards its parameters to an internal StreamWriter, after applying the
necessary formatting changes.

This shields us from the StreamWriter implementation differences
between .Net and Mono.

Source/Bind/BindStreamWriter.cs

index f627ef0..75a3f2a 100644 (file)
@@ -98,17 +98,8 @@ namespace Bind
 
         public void WriteLine(string value)
         {
-            // The Mono implementation of WriteLine calls Write internally.
-            // The .Net implementation does not.
-            // If running on Mono, we must avoid indenting in WriteLine
-            // because then we'll indent twice (once in WriteLine and once in Write).
-            // If running on .Net we must indent in both WriteLine and Write.
-            // Neat, no?
-            if (System.Type.GetType("Mono.Runtime") == null)
-            {
-                WriteIndentations();
-            }
-            sw.WriteLine(value);
+            Write(value);
+            WriteLine();
         }
 
         public void WriteLine(string format, params object[] args)