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
astBuilder.AlwaysUseShortTypeNames = (ConversionFlags & ConversionFlags.UseFullyQualifiedTypeNames) != ConversionFlags.UseFullyQualifiedTypeNames; astBuilder.AlwaysUseShortTypeNames = (ConversionFlags & ConversionFlags.UseFullyQualifiedTypeNames) != ConversionFlags.UseFullyQualifiedTypeNames;
astBuilder.ShowParameterNames = (ConversionFlags & ConversionFlags.ShowParameterNames) == ConversionFlags.ShowParameterNames; astBuilder.ShowParameterNames = (ConversionFlags & ConversionFlags.ShowParameterNames) == ConversionFlags.ShowParameterNames;
astBuilder.UseNullableSpecifierForValueTypes = (ConversionFlags & ConversionFlags.UseNullableSpecifierForValueTypes) != 0; astBuilder.UseNullableSpecifierForValueTypes = (ConversionFlags & ConversionFlags.UseNullableSpecifierForValueTypes) != 0;
astBuilder.SupportInitAccessors = (ConversionFlags & ConversionFlags.SupportInitAccessors) != 0;
astBuilder.SupportRecordClasses = (ConversionFlags & ConversionFlags.SupportRecordClasses) != 0;
return astBuilder; return astBuilder;
} }

8
ICSharpCode.Decompiler/Output/IAmbience.cs

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

8
ILSpy/Languages/CSharpLanguage.cs

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

Loading…
Cancel
Save