Browse Source

When creating a property in VB, rename the field if it would conflict with the property name (fixes SD2-947)

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1613 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 19 years ago
parent
commit
c6ce484c76
  1. 12
      src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryCodeGenerator.cs

12
src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryCodeGenerator.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using ICSharpCode.NRefactory.Ast;
using ICSharpCode.NRefactory.PrettyPrinter;
using ICSharpCode.SharpDevelop.Dom;
namespace ICSharpCode.SharpDevelop.Refactoring
{
@ -54,5 +55,16 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -54,5 +55,16 @@ namespace ICSharpCode.SharpDevelop.Refactoring
{
return new VBNetOutputVisitor();
}
public override PropertyDeclaration CreateProperty(IField field, bool createGetter, bool createSetter)
{
string propertyName = GetPropertyName(field.Name);
if (string.Equals(propertyName, field.Name, StringComparison.InvariantCultureIgnoreCase)) {
FindReferencesAndRenameHelper.RenameMember(field, "m_" + field.Name);
field = new DefaultField(field.ReturnType, "m_" + field.Name,
field.Modifiers, field.Region, field.DeclaringType);
}
return base.CreateProperty(field, createGetter, createSetter);
}
}
}

Loading…
Cancel
Save