diff options
author | Sebastien Pouliot <sebastien@ximian.com> | 2010-06-23 03:42:19 +0400 |
---|---|---|
committer | Sebastien Pouliot <sebastien@ximian.com> | 2010-06-23 03:42:19 +0400 |
commit | 23be02f9cea0aa338bcfd639d88f8d8e15c896dd (patch) | |
tree | aa74da7c35ceb4211361a9d7cf151f41a2b0d76d | |
parent | e6efa3d0698987b829c94e00417bfd2f95471658 (diff) |
2010-06-22 Sebastien Pouliot <sebastien@ximian.com>
* PreferEmptyInstanceOverNullRule.cs: Apply AvoidLargeClassesRule
svn path=/trunk/mono-tools/; revision=159400
-rw-r--r-- | gendarme/rules/Gendarme.Rules.BadPractice/ChangeLog | 4 | ||||
-rw-r--r-- | gendarme/rules/Gendarme.Rules.BadPractice/PreferEmptyInstanceOverNullRule.cs | 26 |
2 files changed, 17 insertions, 13 deletions
diff --git a/gendarme/rules/Gendarme.Rules.BadPractice/ChangeLog b/gendarme/rules/Gendarme.Rules.BadPractice/ChangeLog index 87617b2a..4c6a02bc 100644 --- a/gendarme/rules/Gendarme.Rules.BadPractice/ChangeLog +++ b/gendarme/rules/Gendarme.Rules.BadPractice/ChangeLog @@ -1,3 +1,7 @@ +2010-06-22 Sebastien Pouliot <sebastien@ximian.com> + + * PreferEmptyInstanceOverNullRule.cs: Apply AvoidLargeClassesRule + 2010-06-13 Sebastien Pouliot <sebastien@ximian.com> * DisableDebuggingCodeRule.cs: diff --git a/gendarme/rules/Gendarme.Rules.BadPractice/PreferEmptyInstanceOverNullRule.cs b/gendarme/rules/Gendarme.Rules.BadPractice/PreferEmptyInstanceOverNullRule.cs index 7d2f2a4c..97d6ba60 100644 --- a/gendarme/rules/Gendarme.Rules.BadPractice/PreferEmptyInstanceOverNullRule.cs +++ b/gendarme/rules/Gendarme.Rules.BadPractice/PreferEmptyInstanceOverNullRule.cs @@ -129,10 +129,10 @@ namespace Gendarme.Rules.BadPractice { [Solution ("Return an empty instance instead of null.")] public class PreferEmptyInstanceOverNullRule : ReturnNullRule, IMethodRule { - TypeReference returnType; - bool return_string; - bool return_array; - bool return_ienumerable; + TypeReference return_type; + bool string_return_type; + bool array_return_type; + bool ienumerable_return_type; public override RuleResult CheckMethod (MethodDefinition method) { @@ -145,12 +145,12 @@ namespace Gendarme.Rules.BadPractice { return RuleResult.DoesNotApply; //only apply to methods returning string, array, or IEnumerable-impl - returnType = method.ReturnType.ReturnType; - return_string = (returnType.FullName == "System.String"); - return_array = returnType.IsArray (); - return_ienumerable = returnType.Implements ("System.Collections.IEnumerable"); + return_type = method.ReturnType.ReturnType; + string_return_type = (return_type.FullName == "System.String"); + array_return_type = return_type.IsArray (); + ienumerable_return_type = return_type.Implements ("System.Collections.IEnumerable"); - if (!return_string && !return_array && !return_ienumerable) + if (!string_return_type && !array_return_type && !ienumerable_return_type) return RuleResult.DoesNotApply; return base.CheckMethod (method); @@ -164,11 +164,11 @@ namespace Gendarme.Rules.BadPractice { string SuggestReturnType () { - if (return_string) + if (string_return_type) return "string.Empty"; - else if (return_array) - return string.Format ("an empty {0} array", returnType.Name); - else if (return_ienumerable) + else if (array_return_type) + return string.Format ("an empty {0} array", return_type.Name); + else if (ienumerable_return_type) return "yield break (or equivalent)"; return "an empty collection"; } |