Skip to content

Commit b86bf4f

Browse files
committed
Simplify FixDefaultParamValuesOfOverridesPass.VisitMethodDecl.
1 parent bc3def5 commit b86bf4f

File tree

1 file changed

+12
-16
lines changed

1 file changed

+12
-16
lines changed

src/Generator/Passes/FixDefaultParamValuesOfOverridesPass.cs

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,24 +6,20 @@ public class FixDefaultParamValuesOfOverridesPass : TranslationUnitPass
66
{
77
public override bool VisitMethodDecl(Method method)
88
{
9-
if (method.IsOverride && !method.IsSynthetized)
9+
if (!method.IsOverride || method.IsSynthetized)
10+
return true;
11+
12+
Method rootBaseMethod = ((Class)method.Namespace).GetBaseMethod(method);
13+
for (int i = 0; i < method.Parameters.Count; i++)
1014
{
11-
Method rootBaseMethod = ((Class) method.Namespace).GetBaseMethod(method);
12-
for (int i = 0; i < method.Parameters.Count; i++)
13-
{
14-
var rootBaseParameter = rootBaseMethod.Parameters[i];
15-
var parameter = method.Parameters[i];
16-
if (rootBaseParameter.DefaultArgument == null)
17-
{
18-
parameter.DefaultArgument = null;
19-
}
20-
else
21-
{
22-
parameter.DefaultArgument = rootBaseParameter.DefaultArgument.Clone();
23-
}
24-
}
15+
var rootBaseParameter = rootBaseMethod.Parameters[i];
16+
var parameter = method.Parameters[i];
17+
18+
if (rootBaseParameter.DefaultArgument != null)
19+
parameter.DefaultArgument = rootBaseParameter.DefaultArgument.Clone();
2520
}
26-
return base.VisitMethodDecl(method);
21+
22+
return true;
2723
}
2824
}
2925
}

0 commit comments

Comments
 (0)