Skip to content

Commit 0336253

Browse files
committed
Fixed structure scope, parameter scope, simplify name creation in ctors. Fix Len{B} Declaration selection.
1 parent 4eb9a25 commit 0336253

11 files changed

+22
-21
lines changed

RetailCoder.VBE/Inspections/UnassignedVariableUsageInspection.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ public override IEnumerable<InspectionResultBase> GetInspectionResults()
3030
&& !declaration.IsSelfAssigned
3131
&& !declaration.References.Any(reference => reference.IsAssignment));
3232

33-
var lenFunction = BuiltInDeclarations.SingleOrDefault(s => s.Scope == "VBE7.DLL;VBA.Strings.Len");
34-
var lenbFunction = BuiltInDeclarations.SingleOrDefault(s => s.Scope == "VBE7.DLL;VBA.Strings.LenB");
33+
//The parameter scoping was apparently incorrect before - need to filter for the actual function.
34+
var lenFunction = BuiltInDeclarations.SingleOrDefault(s => s.DeclarationType == DeclarationType.Function && s.Scope.Equals("VBE7.DLL;VBA.Strings.Len"));
35+
var lenbFunction = BuiltInDeclarations.SingleOrDefault(s => s.DeclarationType == DeclarationType.Function && s.Scope.Equals("VBE7.DLL;VBA.Strings.Len"));
3536

3637
return from issue in declarations
3738
where issue.References.Any()

Rubberduck.Parsing/Symbols/ClassModuleDeclaration.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public ClassModuleDeclaration(
5454
public ClassModuleDeclaration(ComCoClass coClass, Declaration parent, QualifiedModuleName module,
5555
Attributes attributes)
5656
: base(
57-
new QualifiedMemberName(module, coClass.Name),
57+
module.QualifyMemberName(coClass.Name),
5858
parent,
5959
parent,
6060
coClass.Name,
@@ -82,7 +82,7 @@ public ClassModuleDeclaration(ComCoClass coClass, Declaration parent, QualifiedM
8282
public ClassModuleDeclaration(ComInterface intrface, Declaration parent, QualifiedModuleName module,
8383
Attributes attributes)
8484
: this(
85-
new QualifiedMemberName(module, intrface.Name),
85+
module.QualifyMemberName(intrface.Name),
8686
parent,
8787
intrface.Name,
8888
true,

Rubberduck.Parsing/Symbols/Declaration.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ public Declaration(
165165
}
166166

167167
public Declaration(ComEnumeration enumeration, Declaration parent, QualifiedModuleName module) : this(
168-
new QualifiedMemberName(module, enumeration.Name),
168+
module.QualifyMemberName(enumeration.Name),
169169
parent,
170170
parent,
171171
enumeration.Name,
@@ -183,7 +183,7 @@ public Declaration(ComEnumeration enumeration, Declaration parent, QualifiedModu
183183
new Attributes()) { }
184184

185185
public Declaration(ComEnumerationMember member, Declaration parent, QualifiedModuleName module) : this(
186-
new QualifiedMemberName(module, member.Name),
186+
module.QualifyMemberName(member.Name),
187187
parent,
188188
parent,
189189
parent.IdentifierName,
@@ -199,7 +199,7 @@ public Declaration(ComEnumerationMember member, Declaration parent, QualifiedMod
199199

200200
public Declaration(ComField field, Declaration parent, QualifiedModuleName module)
201201
: this(
202-
new QualifiedMemberName(module, field.Name),
202+
module.QualifyMemberName(field.Name),
203203
parent,
204204
parent,
205205
field.Name,

Rubberduck.Parsing/Symbols/FunctionDeclaration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public FunctionDeclaration(
5050

5151
public FunctionDeclaration(ComMember member, Declaration parent, QualifiedModuleName module,
5252
Attributes attributes) : this(
53-
new QualifiedMemberName(module, member.Name),
53+
module.QualifyMemberName(member.Name),
5454
parent,
5555
parent,
5656
member.ReturnType.TypeName,

Rubberduck.Parsing/Symbols/ParameterDeclaration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ public ParameterDeclaration(QualifiedMemberName qualifiedName,
7979

8080
public ParameterDeclaration(ComParameter parameter, Declaration parent, QualifiedModuleName module)
8181
: this(
82-
new QualifiedMemberName(module, parameter.Name),
82+
module.QualifyMemberName(parameter.Name),
8383
parent,
8484
parameter.TypeName,
8585
null,

Rubberduck.Parsing/Symbols/ProceduralModuleDeclaration.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public ProceduralModuleDeclaration(
3636
public ProceduralModuleDeclaration(ComModule statics, Declaration parent, QualifiedModuleName module,
3737
Attributes attributes)
3838
: this(
39-
new QualifiedMemberName(module, statics.Name),
39+
module.QualifyMemberName(statics.Name),
4040
parent,
4141
statics.Name,
4242
true,
@@ -49,7 +49,7 @@ public ProceduralModuleDeclaration(ComModule statics, Declaration parent, Qualif
4949
//This is the pseudo-module ctor for COM enumerations.
5050
public ProceduralModuleDeclaration(ComEnumeration enumeration, Declaration parent, QualifiedModuleName module)
5151
: this(
52-
new QualifiedMemberName(module, string.Format("_{0}", enumeration.Name)),
52+
module.QualifyMemberName(string.Format("_{0}", enumeration.Name)),
5353
parent,
5454
string.Format("_{0}", enumeration.Name),
5555
true,
@@ -59,7 +59,7 @@ public ProceduralModuleDeclaration(ComEnumeration enumeration, Declaration paren
5959
//This is the pseudo-module ctor for anything else from COM with fields instead of members.
6060
public ProceduralModuleDeclaration(string pseudo, Declaration parent, QualifiedModuleName module)
6161
: this(
62-
new QualifiedMemberName(module, pseudo),
62+
module.QualifyMemberName(pseudo),
6363
parent,
6464
pseudo,
6565
true,

Rubberduck.Parsing/Symbols/ProjectDeclaration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public ProjectDeclaration(
3333
}
3434

3535
public ProjectDeclaration(ComProject project, QualifiedModuleName module)
36-
: this(new QualifiedMemberName(module, project.Name), project.Name, true)
36+
: this(module.QualifyMemberName(project.Name), project.Name, true)
3737
{
3838
MajorVersion = project.MajorVersion;
3939
MinorVersion = project.MinorVersion;

Rubberduck.Parsing/Symbols/PropertyGetDeclaration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public PropertyGetDeclaration(
5151
public PropertyGetDeclaration(ComMember member, Declaration parent, QualifiedModuleName module,
5252
Attributes attributes)
5353
: this(
54-
new QualifiedMemberName(module, member.Name),
54+
module.QualifyMemberName(member.Name),
5555
parent,
5656
parent,
5757
member.ReturnType.TypeName,

Rubberduck.Parsing/Symbols/PropertyLetDeclaration.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public PropertyLetDeclaration(
4747
public PropertyLetDeclaration(ComMember member, Declaration parent, QualifiedModuleName module,
4848
Attributes attributes)
4949
: this(
50-
new QualifiedMemberName(module, member.Name),
50+
module.QualifyMemberName(member.Name),
5151
parent,
5252
parent,
5353
string.Empty, //TODO: Need to get the types for these.
@@ -61,7 +61,7 @@ public PropertyLetDeclaration(ComMember member, Declaration parent, QualifiedMod
6161
_parameters =
6262
member.Parameters.Select(decl => new ParameterDeclaration(decl, this, module))
6363
.Cast<Declaration>()
64-
.ToList();
64+
.ToList();
6565
}
6666

6767
public IEnumerable<Declaration> Parameters

Rubberduck.Parsing/Symbols/PropertySetDeclaration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public PropertySetDeclaration(
4646

4747
public PropertySetDeclaration(ComMember member, Declaration parent, QualifiedModuleName module,
4848
Attributes attributes) : this(
49-
new QualifiedMemberName(module, member.Name),
49+
module.QualifyMemberName(member.Name),
5050
parent,
5151
parent,
5252
string.Empty, //TODO: Need to get the types for these.

0 commit comments

Comments
 (0)