Browse Source

Fix tooltips of record classes and init accessors.

pull/2276/head
Siegfried Pammer 5 years ago
parent
commit
b6ed312bdb
  1. 2
      ICSharpCode.Decompiler/CSharp/OutputVisitor/CSharpAmbience.cs
  2. 8
      ICSharpCode.Decompiler/Output/IAmbience.cs
  3. 8
      ILSpy/Languages/CSharpLanguage.cs

2
ICSharpCode.Decompiler/CSharp/OutputVisitor/CSharpAmbience.cs

@ -230,6 +230,8 @@ namespace ICSharpCode.Decompiler.CSharp.OutputVisitor @@ -230,6 +230,8 @@ namespace ICSharpCode.Decompiler.CSharp.OutputVisitor
astBuilder.AlwaysUseShortTypeNames = (ConversionFlags & ConversionFlags.UseFullyQualifiedTypeNames) != ConversionFlags.UseFullyQualifiedTypeNames;
astBuilder.ShowParameterNames = (ConversionFlags & ConversionFlags.ShowParameterNames) == ConversionFlags.ShowParameterNames;
astBuilder.UseNullableSpecifierForValueTypes = (ConversionFlags & ConversionFlags.UseNullableSpecifierForValueTypes) != 0;
astBuilder.SupportInitAccessors = (ConversionFlags & ConversionFlags.SupportInitAccessors) != 0;
astBuilder.SupportRecordClasses = (ConversionFlags & ConversionFlags.SupportRecordClasses) != 0;
return astBuilder;
}

8
ICSharpCode.Decompiler/Output/IAmbience.cs

@ -97,6 +97,14 @@ namespace ICSharpCode.Decompiler.Output @@ -97,6 +97,14 @@ namespace ICSharpCode.Decompiler.Output
/// Use <c>T?</c> instead of <c>Nullable&lt;T&gt;</c>.
/// </summary>
UseNullableSpecifierForValueTypes = 0x8000,
/// <summary>
/// Support <c>init</c> accessors.
/// </summary>
SupportInitAccessors = 0x10000,
/// <summary>
/// Support <c>record</c> classes.
/// </summary>
SupportRecordClasses = 0x20000,
StandardConversionFlags = ShowParameterNames |
ShowAccessibility |

8
ILSpy/Languages/CSharpLanguage.cs

@ -717,6 +717,14 @@ namespace ICSharpCode.ILSpy @@ -717,6 +717,14 @@ namespace ICSharpCode.ILSpy
{
flags &= ~ConversionFlags.UseNullableSpecifierForValueTypes;
}
if (settings.RecordClasses)
{
flags |= ConversionFlags.SupportRecordClasses;
}
if (settings.InitAccessors)
{
flags |= ConversionFlags.SupportInitAccessors;
}
if (entity is IMethod m && m.IsLocalFunction)
{
writer.WriteIdentifier(Identifier.Create("(local)"));

Loading…
Cancel
Save