diff options
author | Sebastien Pouliot <sebastien@ximian.com> | 2010-06-19 05:24:56 +0400 |
---|---|---|
committer | Sebastien Pouliot <sebastien@ximian.com> | 2010-06-19 05:24:56 +0400 |
commit | 926353632ebf630c08c756f9e5490eeb73214761 (patch) | |
tree | e45823a05dcca2fb509a9ee69874f7e584ca1c5e /gendarme/framework | |
parent | 1deb9e84186b921c27e10daac00ebdcb89a25ac8 (diff) |
2010-06-18 Sebastien Pouliot <sebastien@ximian.com>
* OpCodeEngine.cs: Apply AvoidRepetitiveCallsToPropertiesRule
svn path=/trunk/mono-tools/; revision=159172
Diffstat (limited to 'gendarme/framework')
-rw-r--r-- | gendarme/framework/Gendarme.Framework.Engines/ChangeLog | 4 | ||||
-rw-r--r-- | gendarme/framework/Gendarme.Framework.Engines/OpCodeEngine.cs | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gendarme/framework/Gendarme.Framework.Engines/ChangeLog b/gendarme/framework/Gendarme.Framework.Engines/ChangeLog index 05a00a24..031b9906 100644 --- a/gendarme/framework/Gendarme.Framework.Engines/ChangeLog +++ b/gendarme/framework/Gendarme.Framework.Engines/ChangeLog @@ -1,3 +1,7 @@ +2010-06-18 Sebastien Pouliot <sebastien@ximian.com> + + * OpCodeEngine.cs: Apply AvoidRepetitiveCallsToPropertiesRule + 2010-06-10 Sebastien Pouliot <sebastien@ximian.com> * SuppressMessageEngine.cs: Skip ctors or methods on types that don't diff --git a/gendarme/framework/Gendarme.Framework.Engines/OpCodeEngine.cs b/gendarme/framework/Gendarme.Framework.Engines/OpCodeEngine.cs index 6e174528..6482de67 100644 --- a/gendarme/framework/Gendarme.Framework.Engines/OpCodeEngine.cs +++ b/gendarme/framework/Gendarme.Framework.Engines/OpCodeEngine.cs @@ -26,6 +26,7 @@ // using System; +using System.Collections; using Mono.Cecil; using Mono.Cecil.Cil; @@ -54,17 +55,17 @@ namespace Gendarme.Framework.Engines { void OnMethodBody (object sender, EngineEventArgs e) { MethodBody body = (sender as MethodBody); - IAnnotationProvider ap = (body.Method as IAnnotationProvider); + IDictionary annotations = (body.Method as IAnnotationProvider).Annotations; // some runners, like the wizard, can run this engine several times // and, in this case, the result won't change - if (ap.Annotations.Contains ("OPCODEBITMASK")) + if (annotations.Contains ("OPCODEBITMASK")) return; OpCodeBitmask mask = new OpCodeBitmask (); foreach (Instruction ins in body.Instructions) { mask.Set (ins.OpCode.Code); } - ap.Annotations.Add ("OPCODEBITMASK", mask); + annotations.Add ("OPCODEBITMASK", mask); } // service offered by the engine |