From 438b8c20b3f7909c82b128d4ba9b89eb931c970f Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:37:02 +0500 Subject: [PATCH 01/13] Update base1.cs --- snippets/csharp/System/IDisposable/Overview/base1.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/snippets/csharp/System/IDisposable/Overview/base1.cs b/snippets/csharp/System/IDisposable/Overview/base1.cs index 12c4d02c721..d36a0356ad8 100644 --- a/snippets/csharp/System/IDisposable/Overview/base1.cs +++ b/snippets/csharp/System/IDisposable/Overview/base1.cs @@ -1,14 +1,14 @@ // -using Microsoft.Win32.SafeHandles; using System; +using System.IO; using System.Runtime.InteropServices; class BaseClass1 : IDisposable { // Flag: Has Dispose already been called? bool disposed = false; - // Instantiate a SafeHandle instance. - SafeHandle handle = new SafeFileHandle(IntPtr.Zero, true); + // Instantiate a FileStream instance. + FileStream fs = new FileStream("test.txt", FileMode.OpenOrCreate); // Public implementation of Dispose pattern callable by consumers. public void Dispose() @@ -25,7 +25,7 @@ protected virtual void Dispose(bool disposing) if (disposing) { - handle.Dispose(); + fs.Dispose(); // Free any other managed objects here. // } From a8b33abbca675bf3a7fb59318c8ab5b8930b1f66 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:38:31 +0500 Subject: [PATCH 02/13] Update derived1.cs --- snippets/csharp/System/IDisposable/Overview/derived1.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/snippets/csharp/System/IDisposable/Overview/derived1.cs b/snippets/csharp/System/IDisposable/Overview/derived1.cs index 96368903bef..a31a5b55085 100644 --- a/snippets/csharp/System/IDisposable/Overview/derived1.cs +++ b/snippets/csharp/System/IDisposable/Overview/derived1.cs @@ -1,14 +1,14 @@ // -using Microsoft.Win32.SafeHandles; using System; +using System.IO; using System.Runtime.InteropServices; class MyDerivedClass : MyBaseClass { // Flag: Has Dispose already been called? bool disposed = false; - // Instantiate a SafeHandle instance. - SafeHandle handle = new SafeFileHandle(IntPtr.Zero, true); + // Instantiate a FileStream instance. + FileStream fs = new FileStream("test.txt", FileMode.OpenOrCreate); // Protected implementation of Dispose pattern. protected override void Dispose(bool disposing) @@ -18,7 +18,7 @@ protected override void Dispose(bool disposing) if (disposing) { - handle.Dispose(); + fs.Dispose(); // Free any other managed objects here. // } From aa71102f643ea0c8b29f17a7fdb9e780c4fd1146 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:40:49 +0500 Subject: [PATCH 03/13] Update base1.fs --- snippets/fsharp/System/IDisposable/Overview/base1.fs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/snippets/fsharp/System/IDisposable/Overview/base1.fs b/snippets/fsharp/System/IDisposable/Overview/base1.fs index 11a1b13200c..00a9713d498 100644 --- a/snippets/fsharp/System/IDisposable/Overview/base1.fs +++ b/snippets/fsharp/System/IDisposable/Overview/base1.fs @@ -1,15 +1,15 @@ module base1 // -open Microsoft.Win32.SafeHandles open System +open System.IO type BaseClass1() = // Flag: Has Dispose already been called? let mutable disposed = false - // Instantiate a SafeHandle instance. - let handle = new SafeFileHandle(IntPtr.Zero, true) + // Instantiate a FileStream instance. + let fs = new FileStream("test.txt", FileMode.OpenOrCreate) interface IDisposable with // Public implementation of Dispose pattern callable by consumers. @@ -22,8 +22,8 @@ type BaseClass1() = override _.Dispose(disposing) = if not disposed then if disposing then - handle.Dispose() + fs.Dispose() // Free any other managed objects here. disposed <- true -// \ No newline at end of file +// From 10ac55a36138d38b80f7891fd9b91beea62a68bb Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:46:23 +0500 Subject: [PATCH 04/13] Update derived1.fs --- snippets/fsharp/System/IDisposable/Overview/derived1.fs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/snippets/fsharp/System/IDisposable/Overview/derived1.fs b/snippets/fsharp/System/IDisposable/Overview/derived1.fs index 352c5a9c439..c3ecd78d5fa 100644 --- a/snippets/fsharp/System/IDisposable/Overview/derived1.fs +++ b/snippets/fsharp/System/IDisposable/Overview/derived1.fs @@ -1,5 +1,6 @@ module derived1 open System +open System.IO type MyBaseClass() = // Flag: Has Dispose already been called? @@ -30,18 +31,18 @@ type MyDerivedClass() = // Flag: Has Dispose already been called? let mutable disposed = false - // Instantiate a SafeHandle instance. - let handle = new SafeFileHandle(IntPtr.Zero, true) + // Instantiate a FileStream instance. + let fs = new FileStream("test.txt", FileMode.OpenOrCreate) // Implementation of Dispose pattern. override _.Dispose(disposing) = if not disposed then if disposing then - handle.Dispose() + fs.Dispose() // Free any other managed objects here. // Free any unmanaged objects here. disposed <- true // Call base class implementation. base.Dispose disposing -// \ No newline at end of file +// From 38db19654229e60659c1cbe6bb46774a73a5a103 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:49:55 +0500 Subject: [PATCH 05/13] Update base1.vb --- .../VS_Snippets_CLR_System/system.idisposable/vb/base1.vb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb index 2a0a882453d..51937611dc4 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb @@ -2,14 +2,14 @@ Option Strict On ' -Imports Microsoft.Win32.SafeHandles +Imports System.IO Imports System.Runtime.InteropServices Class BaseClass : Implements IDisposable ' Flag: Has Dispose already been called? Dim disposed As Boolean = False - ' Instantiate a SafeHandle instance. - Dim handle As SafeHandle = New SafeFileHandle(IntPtr.Zero, True) + ' Instantiate a FileStream instance. + Dim fs As FileStream = New FileStream("test.txt", FileMode.OpenOrCreate) ' Public implementation of Dispose pattern callable by consumers. Public Sub Dispose() _ @@ -23,7 +23,7 @@ Class BaseClass : Implements IDisposable If disposed Then Return If disposing Then - handle.Dispose() + fs.Dispose() ' Free any other managed objects here. ' End If From 04353661059bf798ac79c8b8fac39a4551b2b5af Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:51:54 +0500 Subject: [PATCH 06/13] Update derived1.vb --- .../system.idisposable/vb/derived1.vb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb index d907941b029..6eadad079bc 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb @@ -2,21 +2,21 @@ Option Strict On ' -Imports Microsoft.Win32.SafeHandles +Imports System.IO Imports System.Runtime.InteropServices Class DerivedClass : Inherits BaseClass ' Flag: Has Dispose already been called? Dim disposed As Boolean = False ' Instantiate a SafeHandle instance. - Dim handle As SafeHandle = New SafeFileHandle(IntPtr.Zero, True) + Dim fs As FileStream = New FileStream("test.txt", FileMode.OpenOrCreate) ' Protected implementation of Dispose pattern. Protected Overrides Sub Dispose(disposing As Boolean) If disposed Then Return If disposing Then - handle.Dispose() + fs.Dispose() ' Free any other managed objects here. ' End If From e06775b2dd47153cae4388b41cd96d46e368dc1c Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:52:21 +0500 Subject: [PATCH 07/13] Update comment --- .../VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb index 6eadad079bc..34d8525510c 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb @@ -8,7 +8,7 @@ Imports System.Runtime.InteropServices Class DerivedClass : Inherits BaseClass ' Flag: Has Dispose already been called? Dim disposed As Boolean = False - ' Instantiate a SafeHandle instance. + ' Instantiate a FileStream instance. Dim fs As FileStream = New FileStream("test.txt", FileMode.OpenOrCreate) ' Protected implementation of Dispose pattern. From 1f9e88ccb27b17830cdbc9355c1cf1acee110c75 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 09:55:23 +0500 Subject: [PATCH 08/13] Create IDisposableSnippets.vbproj --- .../system.idisposable/vb/IDisposableSnippets.vbproj | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/IDisposableSnippets.vbproj diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/IDisposableSnippets.vbproj b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/IDisposableSnippets.vbproj new file mode 100644 index 00000000000..dbc151713b6 --- /dev/null +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/IDisposableSnippets.vbproj @@ -0,0 +1,7 @@ + + + + net6.0 + + + From e50fe0f00c51a9bc14b3c12f0af34baecdc87181 Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 10:36:22 +0500 Subject: [PATCH 09/13] Rename BaseClass --- .../VS_Snippets_CLR_System/system.idisposable/vb/base1.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb index 51937611dc4..f0e4b14ce75 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/base1.vb @@ -5,7 +5,7 @@ Option Strict On Imports System.IO Imports System.Runtime.InteropServices -Class BaseClass : Implements IDisposable +Class BaseClass1 : Implements IDisposable ' Flag: Has Dispose already been called? Dim disposed As Boolean = False ' Instantiate a FileStream instance. From 02f79be29b09dfc0303ad301aaa6fd12bf1c37ec Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 10:37:24 +0500 Subject: [PATCH 10/13] Rename DerivedClass --- .../VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb index 34d8525510c..1bf423286cd 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived1.vb @@ -5,7 +5,7 @@ Option Strict On Imports System.IO Imports System.Runtime.InteropServices -Class DerivedClass : Inherits BaseClass +Class DerivedClass2 : Inherits BaseClass2 ' Flag: Has Dispose already been called? Dim disposed As Boolean = False ' Instantiate a FileStream instance. @@ -31,7 +31,7 @@ Class DerivedClass : Inherits BaseClass End Class ' -Class BaseClass : Implements IDisposable +Class BaseClass2 : Implements IDisposable ' Flag: Has Dispose already been called? Dim disposed As Boolean = False From 490ac6fde94fab3d2ce5ba91179209c6d7e520cd Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 10:38:19 +0500 Subject: [PATCH 11/13] Rename WordCount --- .../VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb index d1e788de6ca..296e998035e 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb @@ -5,7 +5,7 @@ Option Strict On Imports System.IO Imports System.Text.RegularExpressions -Public Class WordCount +Public Class WordCount2 Private filename As String Private nWords As Integer Private pattern As String = "\b\w+\b" @@ -49,7 +49,7 @@ End Class Public Module Example Public Sub Main() - Dim wc As New WordCount("C:\users\ronpet\documents\Fr_Mike_Mass.txt") + Dim wc As New WordCount2("C:\users\ronpet\documents\Fr_Mike_Mass.txt") Console.WriteLine("File {0} ({1}) has {2} words", wc.Name, wc.FullName, wc.Count) End Sub From d25238d8379c76255a9d51fb115be808841bf76b Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 10:55:10 +0500 Subject: [PATCH 12/13] Rename Example --- .../VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb index 296e998035e..75957b80d32 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/calling2.vb @@ -47,7 +47,7 @@ Public Class WordCount2 End Class ' -Public Module Example +Public Module Example2 Public Sub Main() Dim wc As New WordCount2("C:\users\ronpet\documents\Fr_Mike_Mass.txt") Console.WriteLine("File {0} ({1}) has {2} words", From 67e6cca8a183ef217f4d1dd088a3d99333d21fdd Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 30 May 2022 10:57:54 +0500 Subject: [PATCH 13/13] Fix name collision --- .../VS_Snippets_CLR_System/system.idisposable/vb/derived2.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived2.vb b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived2.vb index 7ecf14c85b6..51ab6a3f872 100644 --- a/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived2.vb +++ b/snippets/visualbasic/VS_Snippets_CLR_System/system.idisposable/vb/derived2.vb @@ -2,7 +2,7 @@ Option Strict On ' -Class DerivedClass : Inherits BaseClass +Class DerivedClass : Inherits BaseClass3 ' Flag: Has Dispose already been called? Dim disposed As Boolean = False @@ -29,7 +29,7 @@ Class DerivedClass : Inherits BaseClass End Class ' -Class BaseClass : Implements IDisposable +Class BaseClass3 : Implements IDisposable ' Flag: Has Dispose already been called? Dim disposed As Boolean = False