https://github.com/evelez7 updated https://github.com/llvm/llvm-project/pull/173958
>From f38dc1c947058b7a1ad98847fca4df2432ff00aa Mon Sep 17 00:00:00 2001 From: Erick Velez <[email protected]> Date: Wed, 24 Dec 2025 11:59:57 -0800 Subject: [PATCH] [clang-doc] Add class member enums to template Some Mustache tags for member enums already existed in the class template, but they weren't compatible with the current JSON scheme. --- .../clang-doc/assets/class-template.mustache | 22 +++++----- .../clang-doc/assets/enum-template.mustache | 2 +- clang-tools-extra/test/clang-doc/enum.cpp | 43 +++++++++++++------ 3 files changed, 42 insertions(+), 25 deletions(-) diff --git a/clang-tools-extra/clang-doc/assets/class-template.mustache b/clang-tools-extra/clang-doc/assets/class-template.mustache index 9c7b06d7e7117..8555d1bbffae5 100644 --- a/clang-tools-extra/clang-doc/assets/class-template.mustache +++ b/clang-tools-extra/clang-doc/assets/class-template.mustache @@ -71,20 +71,20 @@ </ul> </li> {{/ProtectedFunction}} - {{#Enums}} + {{#HasEnums}} <li class="sidebar-section"> <a class="sidebar-item" href="#Enums">Enums</a> </li> <li> <ul> - {{#Obj}} + {{#Enums}} <li class="sidebar-item-container"> - <a class="sidebar-item" href="#{{USR}}">{{EnumName}}</a> + <a class="sidebar-item" href="#{{USR}}">{{Name}}</a> </li> - {{/Obj}} + {{/Enums}} </ul> </li> - {{/Enums}} + {{/HasEnums}} {{#HasTypedefs}} <li class="sidebar-section"> <a class="sidebar-item" href="#Typedefs">Typedefs</a> @@ -187,16 +187,14 @@ {{/Obj}} </ul> {{/ProtectedFunction}} - {{#Enums}} + {{#HasEnums}} <section id="Enums" class="section-container"> <h2>Enumerations</h2> - <div> - {{#Obj}} - {{>EnumPartial}} - {{/Obj}} - </div> + {{#Enums}} + {{>EnumPartial}} + {{/Enums}} </section> - {{/Enums}} + {{/HasEnums}} {{#Record}} <section id="Classes" class="section-container"> <h2>Inner Classes</h2> diff --git a/clang-tools-extra/clang-doc/assets/enum-template.mustache b/clang-tools-extra/clang-doc/assets/enum-template.mustache index ec42df99a7f4b..af1364c4d37f6 100644 --- a/clang-tools-extra/clang-doc/assets/enum-template.mustache +++ b/clang-tools-extra/clang-doc/assets/enum-template.mustache @@ -5,7 +5,7 @@ This file defines the template for enums }} -<div id="{{ID}}" class="delimiter-container"> +<div id="{{USR}}" class="delimiter-container"> <div> <pre><code class="language-cpp code-clang-doc">enum {{Name}}</code></pre> </div> diff --git a/clang-tools-extra/test/clang-doc/enum.cpp b/clang-tools-extra/test/clang-doc/enum.cpp index bb0d51fc3b36c..ce844ec072564 100644 --- a/clang-tools-extra/test/clang-doc/enum.cpp +++ b/clang-tools-extra/test/clang-doc/enum.cpp @@ -122,18 +122,37 @@ class Animals { }; }; -// HTML-ANIMAL-NOT: <h1>class Animals</h1> -// HTML-ANIMAL-NOT: <h2 id="Enums">Enums</h2> -// HTML-ANIMAL-NOT: <th colspan="3">enum AnimalType</th> -// HTML-ANIMAL-NOT: <td>Dog</td> -// HTML-ANIMAL-NOT: <td>0</td> -// HTML-ANIMAL-NOT: <p> Man's best friend</p> -// HTML-ANIMAL-NOT: <td>Cat</td> -// HTML-ANIMAL-NOT: <td>1</td> -// HTML-ANIMAL-NOT: <p> Man's other best friend</p> -// HTML-ANIMAL-NOT: <td>Iguana</td> -// HTML-ANIMAL-NOT: <td>2</td> -// HTML-ANIMAL-NOT: <p> A lizard</p> +// HTML-ANIMAL: <section id="Enums" class="section-container"> +// HTML-ANIMAL-NEXT: <h2>Enumerations</h2> +// HTML-ANIMAL-NEXT: <div id="{{([0-9A-F]{40})}}" class="delimiter-container"> +// HTML-ANIMAL-NEXT: <div> +// HTML-ANIMAL-NEXT: <pre><code class="language-cpp code-clang-doc">enum AnimalType</code></pre> +// HTML-ANIMAL-NEXT: </div> +// HTML-ANIMAL-NEXT: <table class="table-wrapper"> +// HTML-ANIMAL-NEXT: <tbody> +// HTML-ANIMAL-NEXT: <tr> +// HTML-ANIMAL-NEXT: <th>Name</th> +// HTML-ANIMAL-NEXT: <th>Value</th> +// HTML-ANIMAL-NEXT: </tr> +// HTML-ANIMAL-NEXT: <tr> +// HTML-ANIMAL-NEXT: <td>Dog</td> +// HTML-ANIMAL-NEXT: <td>0</td> +// HTML-ANIMAL-NEXT: </tr> +// HTML-ANIMAL-NEXT: <tr> +// HTML-ANIMAL-NEXT: <td>Cat</td> +// HTML-ANIMAL-NEXT: <td>1</td> +// HTML-ANIMAL-NEXT: </tr> +// HTML-ANIMAL-NEXT: <tr> +// HTML-ANIMAL-NEXT: <td>Iguana</td> +// HTML-ANIMAL-NEXT: <td>2</td> +// HTML-ANIMAL-NEXT: </tr> +// HTML-ANIMAL-NEXT: </tbody> +// HTML-ANIMAL-NEXT: </table> +// HTML-ANIMAL-NEXT: <div> +// HTML-ANIMAL-NEXT: Defined at line 116 of file {{.*}}enum.cpp +// HTML-ANIMAL-NEXT: </div> +// HTML-ANIMAL-NEXT: </div> +// HTML-ANIMAL-NEXT: </section> // MD-ANIMAL: # class Animals // MD-ANIMAL: ## Enums _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
