Skip to content

Commit 0f35adb

Browse files
Sightly improve variable naming of known types such as EventArgs and Exceptions
1 parent 3ed784c commit 0f35adb

File tree

3 files changed

+29
-29
lines changed

3 files changed

+29
-29
lines changed

ICSharpCode.Decompiler.Tests/TestCases/ILPretty/GuessAccessors.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ public void MethodUnknownGenericClass()
5050
//IL_00e1: Expected O, but got Unknown
5151
//IL_00e1: Expected O, but got Unknown
5252
UnknownGenericClass<UnknownEventArgs> val = new UnknownGenericClass<UnknownEventArgs>();
53-
UnknownEventArgs val2 = (val.UnknownProperty = val.UnknownProperty);
53+
UnknownEventArgs e = (val.UnknownProperty = val.UnknownProperty);
5454
List<object> list = new List<object> {
55-
val[((object)val2).GetHashCode()] ?? "",
55+
val[((object)e).GetHashCode()] ?? "",
5656
val.NotProperty,
5757
val.get_NotPropertyWithGeneric<string>(42),
5858
val[42],
@@ -61,10 +61,10 @@ public void MethodUnknownGenericClass()
6161
};
6262
val.OnEvent += Instance_OnEvent;
6363
val.OnEvent -= Instance_OnEvent;
64-
UnknownEventArgs val3 = val[(UnknownEventArgs)null];
65-
val[new UnknownEventArgs()] = val3;
66-
UnknownEventArgs val4 = val[new UnknownEventArgs(), new UnknownEventArgs()];
67-
val[new UnknownEventArgs(), new UnknownEventArgs()] = val4;
64+
UnknownEventArgs e2 = val[(UnknownEventArgs)null];
65+
val[new UnknownEventArgs()] = e2;
66+
UnknownEventArgs e3 = val[new UnknownEventArgs(), new UnknownEventArgs()];
67+
val[new UnknownEventArgs(), new UnknownEventArgs()] = e3;
6868
}
6969

7070
public void MethodUnknownStatic()

ICSharpCode.Decompiler.Tests/TestCases/Pretty/ExceptionHandling.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -418,9 +418,9 @@ public void GenericException<TException>(int input) where TException : Exception
418418
{
419419
Console.WriteLine(input);
420420
}
421-
catch (TException val)
421+
catch (TException ex)
422422
{
423-
Console.WriteLine(val.Message);
423+
Console.WriteLine(ex.Message);
424424
throw;
425425
}
426426
}
@@ -452,9 +452,9 @@ public void GenericExceptionWithCondition<TException>(int input) where TExceptio
452452
{
453453
Console.WriteLine(input);
454454
}
455-
catch (TException val) when (val.Message.Contains("Test"))
455+
catch (TException ex) when (ex.Message.Contains("Test"))
456456
{
457-
Console.WriteLine(val.Message);
457+
Console.WriteLine(ex.Message);
458458
throw;
459459
}
460460
}
@@ -465,9 +465,9 @@ public void GenericException2WithCondition<TException>(int input) where TExcepti
465465
{
466466
Console.WriteLine(input);
467467
}
468-
catch (TException val) when (val.Message.Contains("Test"))
468+
catch (TException ex) when (ex.Message.Contains("Test"))
469469
{
470-
Console.WriteLine("{0} {1}", val, val.ToString());
470+
Console.WriteLine("{0} {1}", ex, ex.ToString());
471471
}
472472
}
473473

ICSharpCode.Decompiler/IL/Transforms/AssignVariableNames.cs

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -729,22 +729,7 @@ static string GetNameByType(IType type)
729729
type = NullableType.GetUnderlyingType(((TypeWithElementType)type).ElementType);
730730
}
731731

732-
string name = type.Kind switch {
733-
TypeKind.Array => "array",
734-
TypeKind.Pointer => "ptr",
735-
TypeKind.TypeParameter => "val",
736-
TypeKind.Unknown => "val",
737-
TypeKind.Dynamic => "val",
738-
TypeKind.ByReference => "reference",
739-
TypeKind.Tuple => "tuple",
740-
TypeKind.NInt => "num",
741-
TypeKind.NUInt => "num",
742-
_ => null
743-
};
744-
if (name != null)
745-
{
746-
return name;
747-
}
732+
string name;
748733
if (type.IsAnonymousType())
749734
{
750735
name = "anon";
@@ -753,13 +738,28 @@ static string GetNameByType(IType type)
753738
{
754739
name = "ex";
755740
}
741+
else if (type.Name.EndsWith("EventArgs", StringComparison.Ordinal))
742+
{
743+
name = "e";
744+
}
756745
else if (type.IsCSharpNativeIntegerType())
757746
{
758747
name = "num";
759748
}
760749
else if (!typeNameToVariableNameDict.TryGetValue(type.FullName, out name))
761750
{
762-
name = type.Name;
751+
name = type.Kind switch {
752+
TypeKind.Array => "array",
753+
TypeKind.Pointer => "ptr",
754+
TypeKind.TypeParameter => "val",
755+
TypeKind.Unknown => "val",
756+
TypeKind.Dynamic => "val",
757+
TypeKind.ByReference => "reference",
758+
TypeKind.Tuple => "tuple",
759+
TypeKind.NInt => "num",
760+
TypeKind.NUInt => "num",
761+
_ => type.Name
762+
};
763763
// remove the 'I' for interfaces
764764
if (name.Length >= 3 && name[0] == 'I' && char.IsUpper(name[1]) && char.IsLower(name[2]))
765765
name = name.Substring(1);

0 commit comments

Comments
 (0)