Skip to content

Make documentation on decompiled code /// XMLDoc and let me hover to see it formatted #6343

Open
@geekley

Description

@geekley

Is your feature request related to a problem? Please describe.

When browsing decompiled code, it shows documentation. But it's not very useful because it's not generated as XML documentation with tags. I can't hover a member to get it formatted. I can't copy it to use a similar structure in an inherited method. I can't differentiate code from regular text. Etc.

The documentation on decompiled members currently looks like this:

  //
  // Summary:
  //     Represents the ratio of the circumference of a circle to its diameter, specified
  //     by the constant, π.
  public const double Pi = 3.141592653589793;

  //
  // Summary:
  //     Computes the absolute of a value.
  //
  // Parameters:
  //   value:
  //     The value for which to get its absolute.
  //
  // Returns:
  //     The absolute of
  //     value
  //     .
  public static double Abs(double value) {
    throw null;
  }

Describe the solution you would like

Documentation should just be in the same XMLDoc format you'd use if you were writing that code. It should then support hovering identifiers as normal, so you get the formatted documentation, just like in regular code.

The generated code for the example above (in System.Double type) should be documented with /// and tags like this:

  ///<summary>Represents the ratio of the circumference of a circle to its diameter, specified
  /// by the constant, π.</summary>
  public const double Pi = 3.141592653589793;

  ///<summary>Computes the absolute of a value.</summary>
  ///<param name="value">The value for which to get its absolute.</param>
  ///<returns>The absolute of <paramref name="value"/>.</returns>
  public static double Abs(double value) {
    throw null;
  }

Applicable Scenarios

It would be much more convenient to understand an open-source library by decompilation if you could just hover things and get properly formatted documentation. You should also be able to get hover within generated code that has proper documentation.

Describe alternatives you've considered

The only alternative is typing the code yourself to get hovers. Still, it doesn't allow copying a documentation structure with tags - you have to do that manually, which is inconvenient.

Additional context

TL;DR: There's 2 issues here:

  • Make decompiled code documentation be generated with XML tags (XMLDoc format)
    • You might also allow a setting to make this optional, in case someone doesn't prefer tags for some reason
  • Hovering identifiers in read-only / generated / decompiled code (even if you can use only info from that file itself)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions