From a747e477fe8f3147170d8e275d1c3df4b6724659 Mon Sep 17 00:00:00 2001 From: Simon Lindgren Date: Tue, 24 Jul 2012 08:55:33 +0200 Subject: [PATCH] [CodeIssues] Use IsKnownType in more places. --- .../Refactoring/CodeIssues/FormatStringIssue.cs | 4 +--- .../Refactoring/CodeIssues/RedundantToStringIssue.cs | 10 ++-------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/FormatStringIssue.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/FormatStringIssue.cs index 08c1f86e91..c8afd65009 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/FormatStringIssue.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/FormatStringIssue.cs @@ -46,12 +46,10 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring class GatherVisitor : GatherVisitorBase { readonly BaseRefactoringContext context; - readonly IType stringType; public GatherVisitor(BaseRefactoringContext context) : base (context) { this.context = context; - stringType = context.Compilation.FindType(KnownTypeCode.String); } public override void VisitInvocationExpression(InvocationExpression invocationExpression) @@ -121,7 +119,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring } var parameter = resolvedParameters[parameterIndex]; var argument = allArguments[i]; - if (parameter.Type.Equals(stringType) && parameterNames.Contains(parameter.Name) && argument is PrimitiveExpression) { + if (parameter.Type.IsKnownType(KnownTypeCode.String) && parameterNames.Contains(parameter.Name) && argument is PrimitiveExpression) { format = (string)((PrimitiveExpression)argument).Value; formatStart = argument.StartLocation; } else if (format != null || parameter.IsParams) { diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantToStringIssue.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantToStringIssue.cs index 2e19e4da90..202a304c2e 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantToStringIssue.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantToStringIssue.cs @@ -46,10 +46,6 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring class GatherVisitor : GatherVisitorBase { - IType stringType; - - IType objectType; - static Tuple onlyFirst = Tuple.Create (0, 0); static IDictionary, Tuple> membersCallingToString = new Dictionary, Tuple> { @@ -61,8 +57,6 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring public GatherVisitor (BaseRefactoringContext context) : base (context) { - stringType = context.Compilation.FindType(KnownTypeCode.String); - objectType = context.Compilation.FindType(KnownTypeCode.Object); } HashSet processedNodes = new HashSet(); @@ -93,7 +87,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring int stringExpressionCount = 0; foreach (var expression in expressions) { var resolveResult = ctx.Resolve(expression); - if (resolveResult.Type == stringType) { + if (resolveResult.Type.IsKnownType(KnownTypeCode.String)) { stringExpressionCount++; } if (stringExpressionCount > 1) { @@ -169,7 +163,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring if (targetResolveResult == null) { return; } - if (targetResolveResult.TargetResult.Type == stringType && targetResolveResult.Member.Name == "ToString") { + if (targetResolveResult.TargetResult.Type.IsKnownType(KnownTypeCode.String) && targetResolveResult.Member.Name == "ToString") { AddRedundantToStringIssue(memberExpression, invocationExpression); } IMember member = targetResolveResult.Member;