From ee0479e2ffea2aeb512608320519e801d43f0847 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Kr=C3=BCger?= Date: Thu, 24 Jan 2013 11:05:56 +0100 Subject: [PATCH] Remove redundant empty argument list is now much less intrusive. --- .../RedundantObjectCreationArgumentListIssue.cs | 10 ++++++---- .../RedundantObjectCreationArgumentListIssueTests.cs | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantObjectCreationArgumentListIssue.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantObjectCreationArgumentListIssue.cs index 304267824b..07da5053de 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantObjectCreationArgumentListIssue.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/RedundantObjectCreationArgumentListIssue.cs @@ -58,10 +58,12 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring AddIssue (objectCreateExpression.LParToken.StartLocation, objectCreateExpression.RParToken.EndLocation, ctx.TranslateString ("Remove redundant empty argument list"), script => { - var expr = new ObjectCreateExpression (objectCreateExpression.Type.Clone ()) { - Initializer = (ArrayInitializerExpression)objectCreateExpression.Initializer.Clone () - }; - script.Replace (objectCreateExpression, expr); + var l1 = objectCreateExpression.LParToken.GetPrevNode ().EndLocation; + var l2 = objectCreateExpression.RParToken.GetNextNode ().StartLocation; + var o1 = script.GetCurrentOffset (l1); + var o2 = script.GetCurrentOffset (l2); + + script.Replace (o1, o2 - o1, " "); }); } } diff --git a/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/RedundantObjectCreationArgumentListIssueTests.cs b/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/RedundantObjectCreationArgumentListIssueTests.cs index 49c2d75876..e1900e2f97 100644 --- a/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/RedundantObjectCreationArgumentListIssueTests.cs +++ b/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/RedundantObjectCreationArgumentListIssueTests.cs @@ -53,8 +53,8 @@ class TestClass void TestMethod () { var x = new TestClass { - Prop = 1 -}; + Prop = 1 + }; } }"; Test (input, 1, output);