class System.IO.MemoryStream
   inherits System.IO.Stream
   implements System.IDisposable:

   def public override property CanRead as logical
      get.

   def public override property CanSeek as logical
      get.

   def public override property CanWrite as logical
      get.

   def public property Capacity as integer
      get.
      set.

   def public override property Length as int64
      get.

   def public override property Position as int64
      get.
      set.

   constructor public MemoryStream():
   end constructor.

   constructor public MemoryStream(input capacity as integer):
   end constructor.

   constructor public MemoryStream(input buffer as System.Byte extent):
   end constructor.

   constructor public MemoryStream(input buffer as System.Byte extent, input writable as logical):
   end constructor.

   constructor public MemoryStream(input buffer as System.Byte extent, input index as integer, input count as integer):
   end constructor.

   constructor public MemoryStream(input buffer as System.Byte extent, input index as integer, input count as integer, input writable as logical):
   end constructor.

   constructor public MemoryStream(input buffer as System.Byte extent, input index as integer, input count as integer, input writable as logical, input publiclyVisible as logical):
   end constructor.

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

   method public override void Flush():
   end method.

   method public override System.Threading.Tasks.Task FlushAsync(input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public System.Byte extent GetBuffer():
   end method.

   method public logical TryGetBuffer(input buffer as System.ArraySegment):
   end method.

   method public override integer Read(input buffer as System.Byte extent, input offset as integer, input count as integer):
   end method.

   method public override System.Threading.Tasks.Task ReadAsync(input buffer as System.Byte extent, input offset as integer, input count as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public override integer ReadByte():
   end method.

   method public override System.Threading.Tasks.Task CopyToAsync(input destination as System.IO.Stream, input bufferSize as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public override int64 Seek(input offset as int64, input loc as System.IO.SeekOrigin):
   end method.

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

   method public System.Byte extent ToArray():
   end method.

   method public override void Write(input buffer as System.Byte extent, input offset as integer, input count as integer):
   end method.

   method public override System.Threading.Tasks.Task WriteAsync(input buffer as System.Byte extent, input offset as integer, input count as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

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

   method public void WriteTo(input stream as System.IO.Stream):
   end method.

end class.
