Xml Comments Support

Up until v2.2.9, Wyam supported the standard XML comments, except <see langword />.

Wyam2 v3.0.0

Added support for:

  • revisionHistory, as defined by SHFB
    • The IDocument returned by the CodeAnalysis module has an additional List<RevisionComment> containing the list of revisions defined in the revision history block
    • the visibility attributes on both revisionHistory and revision elements are taken into consideration when parsing
  • code attributes language, source and region, as defined by SHFB
    • it does not support nested code blocks since the same thing can be achieved by using 2 code blocks and any kind of text in-between
  • definition list, as defined by SHFB
  • ** table list** with 2 or multiple columns, as defined by SHFB
  • note, as defined by SHFB
    • it is rendered as a <div> with css class note type, for example <div class="tip">Always update documentation!</div>
  • b(bold) and i(italics) since they're supported by Visual Studio and Rider intellisense
    • Wyam will render any unknown tags as they are so it is possible to add HTML tags inside XML comments but they cannot contain any XML comment element because it will not be parsed and converted into HTML
    • content of <b></b> and <i></i> elements is parsed so they can contain special XML markup like <see cref="SomeClass" />
  • see langword
    • <see langword="null" /> will be rendered as <code>null</code>

Other SHFB specific elements

  • event is not supported but it is possible to select class methods and retrieve their type and summary
  • preliminary can be retrieved from OtherComment, see this test
  • threadsafety can also be retrieved from OtherComment
  • nested code elements are not supported since the same can be acomplish by defining independent code blocks
  • AttachedEventComments is not supported
  • AttachedPropertyComments is not supported
  • Code Contract elements is not supported
  • conceptualLink is not supported
  • exclude is not supported
  • filterpriority is not supported
  • overloads is not supported
  • token is not supported