-
Notifications
You must be signed in to change notification settings - Fork 4
Gendarme.Rules.BadPractice.OnlyUseDisposeForIDisposableTypesRule(git)
Sebastien Pouliot edited this page Mar 2, 2011
·
1 revision
Assembly: Gendarme.Rules.BadPractice
Version: git
To avoid confusing developers methods named Dispose should be reserved for types that implement IDisposable.
Bad example:
internal sealed class Worker
{
// This class uses one or more temporary files to do its work.
private List<string> files = new List<string> ();
// This is confusing: developers will think they can do things
// like use the instance with a using statement.
public void Dispose ()
{
foreach (string path in files) {
File.Delete (path);
}
files.Clear ();
}
}
Good example:
internal sealed class Worker
{
// This class uses one or more temporary files to do its work.
private List<string> files = new List<string> ();
public void Reset ()
{
foreach (string path in files) {
File.Delete (path);
}
files.Clear ();
}
}
- This rule is available since Gendarme 2.6
You can browse the latest source code of this rule on github.com
Note that this page was autogenerated (3/17/2011 1:55:44 PM) based on the xmldoc
comments inside the rules source code and cannot be edited from this wiki.
Please report any documentation errors, typos or suggestions to the
Gendarme Mailing List. Thanks!