class System.IO.TextWriter
   inherits System.MarshalByRefObject
   implements System.IDisposable
   abstract:

   /* use of a reserved keyword as a member variable cannot be modeled using the OO 4GL */
   /* def public static variable Null as System.IO.TextWriter. */

   def protected variable CoreNewLine as System.Char extent.

   def public property FormatProvider as System.IFormatProvider
      get.

   def public abstract property Encoding as System.Text.Encoding
      get.

   def public property NewLine as character
      get.
      set.

   constructor protected TextWriter():
   end constructor.

   constructor protected TextWriter(input formatProvider as System.IFormatProvider):
   end constructor.

   method public void Close():
   end method.

   method protected final void Dispose(input disposing as logical):
   end method.

   method public final void Dispose():
   end method.

   method public void Flush():
   end method.

   method public final static System.IO.TextWriter Synchronized(input writer as System.IO.TextWriter):
   end method.

   method public void Write(input value as character):
   end method.

   method public void Write(input buffer as System.Char extent):
   end method.

   method public void Write(input buffer as System.Char extent, input index as integer, input count as integer):
   end method.

   method public void Write(input value as logical):
   end method.

   method public void Write(input value as integer):
   end method.

   method public void Write(input value as integer):
   end method.

   method public void Write(input value as int64):
   end method.

   method public void Write(input value as int64):
   end method.

   method public void Write(input value as decimal):
   end method.

   method public void Write(input value as decimal):
   end method.

   method public void Write(input value as decimal):
   end method.

   method public void Write(input value as character):
   end method.

   method public void Write(input value as System.Object):
   end method.

   method public void Write(input format as character, input arg0 as System.Object):
   end method.

   method public void Write(input format as character, input arg0 as System.Object, input arg1 as System.Object):
   end method.

   method public void Write(input format as character, input arg0 as System.Object, input arg1 as System.Object, input arg2 as System.Object):
   end method.

   method public void Write(input format as character, input arg as System.Object extent):
   end method.

   method public void WriteLine():
   end method.

   method public void WriteLine(input value as character):
   end method.

   method public void WriteLine(input buffer as System.Char extent):
   end method.

   method public void WriteLine(input buffer as System.Char extent, input index as integer, input count as integer):
   end method.

   method public void WriteLine(input value as logical):
   end method.

   method public void WriteLine(input value as integer):
   end method.

   method public void WriteLine(input value as integer):
   end method.

   method public void WriteLine(input value as int64):
   end method.

   method public void WriteLine(input value as int64):
   end method.

   method public void WriteLine(input value as decimal):
   end method.

   method public void WriteLine(input value as decimal):
   end method.

   method public void WriteLine(input value as decimal):
   end method.

   method public void WriteLine(input value as character):
   end method.

   method public void WriteLine(input value as System.Object):
   end method.

   method public void WriteLine(input format as character, input arg0 as System.Object):
   end method.

   method public void WriteLine(input format as character, input arg0 as System.Object, input arg1 as System.Object):
   end method.

   method public void WriteLine(input format as character, input arg0 as System.Object, input arg1 as System.Object, input arg2 as System.Object):
   end method.

   method public void WriteLine(input format as character, input arg as System.Object extent):
   end method.

   method public System.Threading.Tasks.Task WriteAsync(input value as character):
   end method.

   method public System.Threading.Tasks.Task WriteAsync(input value as character):
   end method.

   method public final System.Threading.Tasks.Task WriteAsync(input buffer as System.Char extent):
   end method.

   method public System.Threading.Tasks.Task WriteAsync(input buffer as System.Char extent, input index as integer, input count as integer):
   end method.

   method public System.Threading.Tasks.Task WriteLineAsync(input value as character):
   end method.

   method public System.Threading.Tasks.Task WriteLineAsync(input value as character):
   end method.

   method public final System.Threading.Tasks.Task WriteLineAsync(input buffer as System.Char extent):
   end method.

   method public System.Threading.Tasks.Task WriteLineAsync(input buffer as System.Char extent, input index as integer, input count as integer):
   end method.

   method public System.Threading.Tasks.Task WriteLineAsync():
   end method.

   method public System.Threading.Tasks.Task FlushAsync():
   end method.

end class.
