Skip to content

Commit 0da29c2

Browse files
authored
Merge pull request #5562 from BZngr/DefaultPropertyRHSIdentifer
Change CodeBuilder default property rhs parameter identifier to 'RHS'
2 parents a64fc33 + 4f6a636 commit 0da29c2

17 files changed

+94
-163
lines changed

Rubberduck.Refactorings/Common/CodeBuilder.cs

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -68,18 +68,10 @@ bool TryBuildPropertySetCodeBlock(Declaration prototype,
6868
string accessibility = null,
6969
string content = null,
7070
string parameterIdentifier = null);
71-
/// <summary>
72-
/// Generates a default RHS property parameter IdentifierName
73-
/// </summary>
74-
/// <param name="propertyIdentifier">Let/Set Property IdentifierName</param>
75-
string BuildPropertyRhsParameterName(string propertyIdentifier);
7671
}
7772

7873
public class CodeBuilder : ICodeBuilder
7974
{
80-
public string BuildPropertyRhsParameterName(string propertyIdentifier)
81-
=> string.Format(Resources.Refactorings.Refactorings.CodeBuilder_DefaultPropertyRHSParamFormat, propertyIdentifier.ToLowerCaseFirstLetter());
82-
8375
public string BuildMemberBlockFromPrototype(ModuleBodyElementDeclaration declaration,
8476
string content = null,
8577
string accessibility = null,
@@ -119,7 +111,7 @@ private bool TryBuildPropertyBlockFromTarget<T>(T prototype, DeclarationType let
119111
return false;
120112
}
121113

122-
var propertyValueParam = parameterIdentifier ?? BuildPropertyRhsParameterName(propertyIdentifier);
114+
var propertyValueParam = parameterIdentifier ?? Resources.Refactorings.Refactorings.CodeBuilder_DefaultPropertyRHSParam;
123115

124116
var asType = prototype.IsArray
125117
? $"{Tokens.Variant}"

Rubberduck.Refactorings/EncapsulateField/EncapsulateFieldElementsBuilder.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using Rubberduck.Parsing.Grammar;
2-
using Rubberduck.Parsing.Symbols;
1+
using Rubberduck.Parsing.Symbols;
32
using Rubberduck.Parsing.VBA;
43
using Rubberduck.Refactorings.Common;
54
using Rubberduck.VBEditor;
@@ -111,7 +110,7 @@ private IEncapsulateFieldCandidate CreateCandidate(Declaration target, IValidate
111110
if (target.IsUserDefinedType())
112111
{
113112
var udtValidator = EncapsulateFieldValidationsProvider.NameOnlyValidator(NameValidators.UserDefinedType);
114-
var udtField = new UserDefinedTypeCandidate(target, udtValidator, _codeBuilder.BuildPropertyRhsParameterName) as IUserDefinedTypeCandidate;
113+
var udtField = new UserDefinedTypeCandidate(target, udtValidator) as IUserDefinedTypeCandidate;
115114

116115
(Declaration udtDeclaration, IEnumerable<Declaration> udtMembers) = GetUDTAndMembersForField(udtField);
117116

@@ -126,7 +125,7 @@ private IEncapsulateFieldCandidate CreateCandidate(Declaration target, IValidate
126125
{
127126
udtMemberValidator = EncapsulateFieldValidationsProvider.NameOnlyValidator(NameValidators.UserDefinedTypeMemberArray);
128127
}
129-
var candidateUDTMember = new UserDefinedTypeMemberCandidate(CreateCandidate(udtMemberDeclaration, udtMemberValidator), udtField, _codeBuilder.BuildPropertyRhsParameterName) as IUserDefinedTypeMemberCandidate;
128+
var candidateUDTMember = new UserDefinedTypeMemberCandidate(CreateCandidate(udtMemberDeclaration, udtMemberValidator), udtField) as IUserDefinedTypeMemberCandidate;
130129

131130
udtField.AddMember(candidateUDTMember);
132131
}
@@ -142,10 +141,10 @@ private IEncapsulateFieldCandidate CreateCandidate(Declaration target, IValidate
142141
}
143142
else if (target.IsArray)
144143
{
145-
return new ArrayCandidate(target, validator, _codeBuilder.BuildPropertyRhsParameterName);
144+
return new ArrayCandidate(target, validator);
146145
}
147146

148-
var candidate = new EncapsulateFieldCandidate(target, validator, _codeBuilder.BuildPropertyRhsParameterName);
147+
var candidate = new EncapsulateFieldCandidate(target, validator);
149148
return candidate;
150149
}
151150

Rubberduck.Refactorings/EncapsulateField/FieldCandidates/ArrayCandidate.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using Rubberduck.Parsing.Grammar;
33
using Rubberduck.Parsing.Symbols;
44
using Rubberduck.Resources;
5-
using System;
65
using System.Linq;
76

87
namespace Rubberduck.Refactorings.EncapsulateField
@@ -16,8 +15,8 @@ public interface IArrayCandidate : IEncapsulateFieldCandidate
1615
public class ArrayCandidate : EncapsulateFieldCandidate, IArrayCandidate
1716
{
1817
private string _subscripts;
19-
public ArrayCandidate(Declaration declaration, IValidateVBAIdentifiers validator, Func<string,string> parameterNameBuilder)
20-
:base(declaration, validator, parameterNameBuilder)
18+
public ArrayCandidate(Declaration declaration, IValidateVBAIdentifiers validator)
19+
:base(declaration, validator)
2120
{
2221
ImplementLet = false;
2322
ImplementSet = false;

Rubberduck.Refactorings/EncapsulateField/FieldCandidates/EncapsulateFieldCandidate.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,13 @@ public class EncapsulateFieldCandidate : IEncapsulateFieldCandidate
4545
protected int _hashCode;
4646
private string _identifierName;
4747
protected EncapsulationIdentifiers _fieldAndProperty;
48-
private Func<string, string> _parameterNameBuilder;
48+
private string _rhsParameterIdentifierName;
4949

50-
public EncapsulateFieldCandidate(Declaration declaration, IValidateVBAIdentifiers identifierValidator, Func<string, string> parameterNameBuilder)
50+
public EncapsulateFieldCandidate(Declaration declaration, IValidateVBAIdentifiers identifierValidator)
5151
{
5252
_target = declaration;
5353
NameValidator = identifierValidator;
54-
_parameterNameBuilder = parameterNameBuilder;
54+
_rhsParameterIdentifierName = Resources.Refactorings.Refactorings.CodeBuilder_DefaultPropertyRHSParam;
5555

5656
_fieldAndProperty = new EncapsulationIdentifiers(declaration.IdentifierName, identifierValidator);
5757
IdentifierName = declaration.IdentifierName;
@@ -202,7 +202,7 @@ public string IdentifierName
202202

203203
public virtual string ReferenceQualifier { set; get; }
204204

205-
public string ParameterName => _parameterNameBuilder(PropertyIdentifier);
205+
public string ParameterName => _rhsParameterIdentifierName;
206206

207207
private bool _implLet;
208208
public bool ImplementLet { get => !IsReadOnly && _implLet; set => _implLet = value; }

Rubberduck.Refactorings/EncapsulateField/FieldCandidates/UserDefinedTypeCandidate.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ public interface IUserDefinedTypeCandidate : IEncapsulateFieldCandidate
1717

1818
public class UserDefinedTypeCandidate : EncapsulateFieldCandidate, IUserDefinedTypeCandidate
1919
{
20-
public UserDefinedTypeCandidate(Declaration declaration, IValidateVBAIdentifiers identifierValidator, Func<string,string> parameterNameBuilder)
21-
: base(declaration, identifierValidator, parameterNameBuilder)
20+
public UserDefinedTypeCandidate(Declaration declaration, IValidateVBAIdentifiers identifierValidator)
21+
: base(declaration, identifierValidator)
2222
{
2323
}
2424

Rubberduck.Refactorings/EncapsulateField/FieldCandidates/UserDefinedTypeMemberCandidate.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ public class UserDefinedTypeMemberCandidate : IUserDefinedTypeMemberCandidate
2020
{
2121
private int _hashCode;
2222
private readonly string _uniqueID;
23-
private Func<string, string> _parameterNameBuilder;
24-
public UserDefinedTypeMemberCandidate(IEncapsulateFieldCandidate candidate, IUserDefinedTypeCandidate udtField, Func<string,string> parameterNameBuilder)
23+
private string _rhsParameterIdentifierName;
24+
public UserDefinedTypeMemberCandidate(IEncapsulateFieldCandidate candidate, IUserDefinedTypeCandidate udtField)
2525
{
2626
_wrappedCandidate = candidate;
27-
_parameterNameBuilder = parameterNameBuilder;
27+
_rhsParameterIdentifierName = Resources.Refactorings.Refactorings.CodeBuilder_DefaultPropertyRHSParam;
2828
UDTField = udtField;
2929
PropertyIdentifier = IdentifierName;
3030
BackingIdentifier = IdentifierName;
@@ -203,7 +203,7 @@ public QualifiedModuleName QualifiedModuleName
203203

204204
public string PropertyAsTypeName => _wrappedCandidate.PropertyAsTypeName;
205205

206-
public string ParameterName => _parameterNameBuilder(PropertyIdentifier);
206+
public string ParameterName => _rhsParameterIdentifierName;
207207

208208
public bool ImplementLet => _wrappedCandidate.ImplementLet;
209209

Rubberduck.Refactorings/EncapsulateField/ObjectStateUDT.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public interface IObjectStateUDT : IEncapsulateFieldRefactoringElement
3030
//newly inserted declaration
3131
public class ObjectStateUDT : IObjectStateUDT
3232
{
33-
private static string _defaultNewFieldName = RubberduckUI.EncapsulateField_DefaultObjectStateUDTFieldName; // EncapsulateFieldResources.DefaultStateUDTFieldName;
33+
private static string _defaultNewFieldName = "this";
3434
private List<IConvertToUDTMember> _convertedMembers;
3535

3636
private readonly IUserDefinedTypeCandidate _wrappedUDT;

Rubberduck.Resources/Refactorings/Refactorings.Designer.cs

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Rubberduck.Resources/Refactorings/Refactorings.resx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,9 +117,9 @@
117117
<resheader name="writer">
118118
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119119
</resheader>
120-
<data name="CodeBuilder_DefaultPropertyRHSParamFormat" xml:space="preserve">
121-
<value>{0}Value</value>
122-
<comment>0: Property Name (first char lower case)</comment>
120+
<data name="CodeBuilder_DefaultPropertyRHSParam" xml:space="preserve">
121+
<value>RHS</value>
122+
<comment>VBA identifier; should not be translated</comment>
123123
</data>
124124
<data name="ImplementInterface_TODO" xml:space="preserve">
125125
<value>'TODO implement interface member</value>

Rubberduck.Resources/RubberduckUI.Designer.cs

Lines changed: 0 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)