Skip to content

Commit 70dd8b7

Browse files
committed
Removed superfuous else and contracted if chains to boolean expressions.
1 parent b38db63 commit 70dd8b7

File tree

2 files changed

+20
-68
lines changed

2 files changed

+20
-68
lines changed

Rubberduck.Parsing/Symbols/AccessibilityCheck.cs

Lines changed: 16 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -4,45 +4,20 @@ public static class AccessibilityCheck
44
{
55
public static bool IsAccessible(Declaration callingProject, Declaration callingModule, Declaration callingParent, Declaration callee)
66
{
7-
if (callee == null)
8-
{
9-
return false;
10-
}
11-
else if (callee.DeclarationType.HasFlag(DeclarationType.Project))
12-
{
13-
return true;
14-
}
15-
else if (callee.DeclarationType.HasFlag(DeclarationType.Module))
16-
{
17-
return IsModuleAccessible(callingProject, callingModule, callee);
18-
}
19-
else
20-
{
21-
return IsMemberAccessible(callingProject, callingModule, callingParent, callee);
22-
}
7+
return callee != null
8+
&& (callee.DeclarationType.HasFlag(DeclarationType.Project)
9+
|| (callee.DeclarationType.HasFlag(DeclarationType.Module) && IsModuleAccessible(callingProject, callingModule, callee))
10+
|| (!callee.DeclarationType.HasFlag(DeclarationType.Module) && IsMemberAccessible(callingProject, callingModule, callingParent, callee)));
2311
}
2412

2513

2614
public static bool IsModuleAccessible(Declaration callingProject, Declaration callingModule, Declaration calleeModule)
2715
{
28-
if (calleeModule == null)
29-
{
30-
return false;
31-
}
32-
else if (IsTheSameModule(callingModule, calleeModule) || IsEnclosingProject(callingProject, calleeModule))
33-
{
34-
return true;
35-
}
36-
else if (calleeModule.DeclarationType.HasFlag(DeclarationType.ProceduralModule))
37-
{
38-
bool isPrivate = ((ProceduralModuleDeclaration)calleeModule).IsPrivateModule;
39-
return !isPrivate;
40-
}
41-
else
42-
{
43-
bool isExposed = ((ClassModuleDeclaration)calleeModule).IsExposed;
44-
return isExposed;
45-
}
16+
return calleeModule != null
17+
&& (IsTheSameModule(callingModule, calleeModule)
18+
|| IsEnclosingProject(callingProject, calleeModule)
19+
|| (calleeModule.DeclarationType.HasFlag(DeclarationType.ProceduralModule) && !((ProceduralModuleDeclaration)calleeModule).IsPrivateModule)
20+
|| (!calleeModule.DeclarationType.HasFlag(DeclarationType.ProceduralModule) && ((ClassModuleDeclaration)calleeModule).IsExposed));
4621
}
4722

4823
private static bool IsTheSameModule(Declaration callingModule, Declaration calleeModule)
@@ -63,34 +38,17 @@ public static bool IsMemberAccessible(Declaration callingProject, Declaration ca
6338
{
6439
return false;
6540
}
66-
else if (IsEnclosingModuleOfInstanceMember(callingModule, calleeMember))
67-
{
68-
return true;
69-
}
70-
else if (IsLocalMemberOfTheCallingSubroutineOrProperty(callingParent, calleeMember))
41+
if (IsEnclosingModuleOfInstanceMember(callingModule, calleeMember)
42+
|| IsLocalMemberOfTheCallingSubroutineOrProperty(callingParent, calleeMember))
7143
{
7244
return true;
7345
}
7446
var memberModule = Declaration.GetModuleParent(calleeMember);
75-
if (IsModuleAccessible(callingProject, callingModule, memberModule))
76-
{
77-
if (calleeMember.DeclarationType.HasFlag(DeclarationType.EnumerationMember) || calleeMember.DeclarationType.HasFlag(DeclarationType.UserDefinedTypeMember))
78-
{
79-
return true;
80-
}
81-
else if (IsEnclosingProject(callingProject, memberModule) && IsAccessibleThroughoutTheSameProject(calleeMember))
82-
{
83-
return true;
84-
}
85-
else
86-
{
87-
return HasPublicScope(calleeMember);
88-
}
89-
}
90-
else
91-
{
92-
return false;
93-
}
47+
return IsModuleAccessible(callingProject, callingModule, memberModule)
48+
&& (calleeMember.DeclarationType.HasFlag(DeclarationType.EnumerationMember)
49+
|| calleeMember.DeclarationType.HasFlag(DeclarationType.UserDefinedTypeMember)
50+
|| HasPublicScope(calleeMember)
51+
|| (IsEnclosingProject(callingProject, memberModule) && IsAccessibleThroughoutTheSameProject(calleeMember)));
9452
}
9553

9654
private static bool IsEnclosingModuleOfInstanceMember(Declaration callingModule, Declaration calleeMember)

Rubberduck.Parsing/Symbols/ClassModuleDeclaration.cs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,7 @@ public static IEnumerable<Declaration> GetSupertypes(Declaration type)
5353
{
5454
return new List<Declaration>();
5555
}
56-
else
57-
{
58-
return ((ClassModuleDeclaration)type).Supertypes;
59-
}
56+
return ((ClassModuleDeclaration)type).Supertypes;
6057
}
6158

6259

@@ -73,16 +70,13 @@ public bool IsExposed
7370
{
7471
return _isExposed.Value;
7572
}
76-
else if (IsBuiltIn)
73+
if (IsBuiltIn)
7774
{
7875
_isExposed = IsExposedForBuiltInModules();
7976
return _isExposed.Value;
8077
}
81-
else
82-
{
83-
_isExposed = HasAttribute("VB_Exposed");
84-
return _isExposed.Value;
85-
}
78+
_isExposed = HasAttribute("VB_Exposed");
79+
return _isExposed.Value;
8680
}
8781
}
8882

0 commit comments

Comments
 (0)