// RUN: rm -rf %t && mkdir -p %t // RUN: clang-doc --format=html --doxygen --output=%t --executor=standalone %S/Inputs/enum.cpp // RUN: clang-doc --format=md --doxygen --output=%t --executor=standalone %S/Inputs/enum.cpp // RUN: clang-doc --format=md_mustache --pretty-json --doxygen --output=%t --executor=standalone %S/Inputs/enum.cpp // RUN: FileCheck %s < %t/html/GlobalNamespace/index.html --check-prefix=HTML-INDEX // RUN: FileCheck %s < %t/html/GlobalNamespace/_ZTV7Animals.html --check-prefix=HTML-ANIMAL // RUN: FileCheck %s < %t/html/GlobalNamespace/_ZTV15FilePermissions.html --check-prefix=HTML-PERM // RUN: FileCheck %s < %t/html/Vehicles/index.html --check-prefix=HTML-VEHICLES // RUN: FileCheck %s < %t/GlobalNamespace/index.md --check-prefix=MD-INDEX // RUN: FileCheck %s < %t/GlobalNamespace/Animals.md --check-prefix=MD-ANIMAL // RUN: FileCheck %s < %t/GlobalNamespace/FilePermissions.md --check-prefix=MD-PERM // RUN: FileCheck %s < %t/Vehicles/index.md --check-prefix=MD-VEHICLES // RUN: FileCheck %s < %t/md/GlobalNamespace/index.md --check-prefix=MD-MUSTACHE-INDEX // RUN: FileCheck %s < %t/md/GlobalNamespace/_ZTV7Animals.md --check-prefix=MD-MUSTACHE-ANIMAL // RUN: FileCheck %s < %t/md/Vehicles/index.md --check-prefix=MD-MUSTACHE-VEHICLES // RUN: FileCheck %s < %t/json/GlobalNamespace/index.json --check-prefix=JSON-INDEX // RUN: FileCheck %s < %t/json/Vehicles/index.json --check-prefix=JSON-VEHICLES-INDEX // JSON-INDEX: { // JSON-INDEX-NEXT: "DocumentationFileName": "index", // JSON-INDEX-NEXT: "Enums": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "BriefComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "For specifying RGB colors" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "HasBriefComments": true // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasComments": true, // JSON-INDEX-NEXT: "InfoType": "enum", // JSON-INDEX-NEXT: "Location": { // JSON-INDEX-NEXT: "Filename": "{{.*}}enum.cpp", // JSON-INDEX-NEXT: "LineNumber": 4 // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Members": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 1" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Red", // JSON-INDEX-NEXT: "Value": "0" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 2" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Green", // JSON-INDEX-NEXT: "Value": "1" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 3" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Blue", // JSON-INDEX-NEXT: "Value": "2" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "Name": "Color", // JSON-INDEX-NEXT: "Scoped": false, // JSON-INDEX-NEXT: "USR": "{{([0-9A-F]{40})}}" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "BriefComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Shape Types" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "HasBriefComments": true // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasComments": true, // JSON-INDEX-NEXT: "InfoType": "enum", // JSON-INDEX-NEXT: "Location": { // JSON-INDEX-NEXT: "Filename": "{{.*}}enum.cpp", // JSON-INDEX-NEXT: "LineNumber": 13 // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Members": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 1" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Circle", // JSON-INDEX-NEXT: "Value": "0" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 2" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Rectangle", // JSON-INDEX-NEXT: "Value": "1" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Comment 3" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Triangle", // JSON-INDEX-NEXT: "Value": "2" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "Name": "Shapes", // JSON-INDEX-NEXT: "Scoped": true, // JSON-INDEX-NEXT: "USR": "{{([0-9A-F]{40})}}" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "BaseType": { // JSON-INDEX-NEXT: "Name": "uint8_t", // JSON-INDEX-NEXT: "QualName": "uint8_t", // JSON-INDEX-NEXT: "USR": "0000000000000000000000000000000000000000" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "BriefComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Specify the size" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "HasBriefComments": true // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasComments": true, // JSON-INDEX-NEXT: "InfoType": "enum", // JSON-INDEX-NEXT: "Location": { // JSON-INDEX-NEXT: "Filename": "{{.*}}enum.cpp", // JSON-INDEX-NEXT: "LineNumber": 26 // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Members": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "A pearl." // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Pearls are quite small." // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Pearls are used in jewelry." // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Small", // JSON-INDEX-NEXT: "Value": "0" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "BriefComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "A tennis ball." // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "HasBriefComments": true // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Medium", // JSON-INDEX-NEXT: "Value": "1" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "A football." // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "Large", // JSON-INDEX-NEXT: "Value": "2" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "Name": "Size", // JSON-INDEX-NEXT: "Scoped": false, // JSON-INDEX-NEXT: "USR": "{{([0-9A-F]{40})}}" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "BaseType": { // JSON-INDEX-NEXT: "Name": "long long", // JSON-INDEX-NEXT: "QualName": "long long", // JSON-INDEX-NEXT: "USR": "0000000000000000000000000000000000000000" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "BriefComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "Very long number" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "HasBriefComments": true // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "HasComments": true, // JSON-INDEX-NEXT: "InfoType": "enum", // JSON-INDEX-NEXT: "Location": { // JSON-INDEX-NEXT: "Filename": "{{.*}}enum.cpp", // JSON-INDEX-NEXT: "LineNumber": 43 // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Members": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Description": { // JSON-INDEX-NEXT: "HasParagraphComments": true, // JSON-INDEX-NEXT: "ParagraphComments": [ // JSON-INDEX-NEXT: [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "TextComment": "A very large value" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: ] // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "HasEnumMemberComments": true, // JSON-INDEX-NEXT: "Name": "BigVal", // JSON-INDEX-NEXT: "ValueExpr": "999999999999" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "Scoped": false, // JSON-INDEX-NEXT: "USR": "{{([0-9A-F]{40})}}" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "InfoType": "enum", // JSON-INDEX-NEXT: "Location": { // JSON-INDEX-NEXT: "Filename": "{{.*}}enum.cpp", // JSON-INDEX-NEXT: "LineNumber": 47 // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: "Members": [ // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Name": "RedUserSpecified", // JSON-INDEX-NEXT: "ValueExpr": "'A'" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "Name": "GreenUserSpecified", // JSON-INDEX-NEXT: "ValueExpr": "2" // JSON-INDEX-NEXT: }, // JSON-INDEX-NEXT: { // JSON-INDEX-NEXT: "End": true, // JSON-INDEX-NEXT: "Name": "BlueUserSpecified", // JSON-INDEX-NEXT: "ValueExpr": "'C'" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // JSON-INDEX-NEXT: "Name": "ColorUserSpecified", // JSON-INDEX-NEXT: "Scoped": false, // JSON-INDEX-NEXT: "USR": "{{([0-9A-F]{40})}}" // JSON-INDEX-NEXT: } // JSON-INDEX-NEXT: ], // HTML-INDEX-LABEL:
enum Color
// HTML-INDEX-NEXT: | Name | // HTML-INDEX-NEXT:Value | // HTML-INDEX-NEXT:Comments | // HTML-INDEX-NEXT:
|---|---|---|
| Red | // HTML-INDEX-NEXT:0 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 1 |
// HTML-INDEX-NEXT:
| Green | // HTML-INDEX-NEXT:1 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 2 |
// HTML-INDEX-NEXT:
| Blue | // HTML-INDEX-NEXT:2 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 3 |
// HTML-INDEX-NEXT:
For specifying RGB colors
// HTML-INDEX-NEXT:enum class Shapes
// HTML-INDEX-NEXT: | Name | // HTML-INDEX-NEXT:Value | // HTML-INDEX-NEXT:Comments | // HTML-INDEX-NEXT:
|---|---|---|
| Circle | // HTML-INDEX-NEXT:0 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 1 |
// HTML-INDEX-NEXT:
| Rectangle | // HTML-INDEX-NEXT:1 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 2 |
// HTML-INDEX-NEXT:
| Triangle | // HTML-INDEX-NEXT:2 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: Comment 3 |
// HTML-INDEX-NEXT:
Shape Types
// HTML-INDEX-NEXT:enum Size : uint8_t
// HTML-INDEX-NEXT: | Name | // HTML-INDEX-NEXT:Value | // HTML-INDEX-NEXT:Comments | // HTML-INDEX-NEXT:
|---|---|---|
| Small | // HTML-INDEX-NEXT:0 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: A pearl.
// HTML-INDEX-NEXT: Pearls are used in jewelry. |
// HTML-INDEX-NEXT:
| Medium | // HTML-INDEX-NEXT:1 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: A tennis ball. // HTML-INDEX-NEXT: |
// HTML-INDEX-NEXT:
| Large | // HTML-INDEX-NEXT:2 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: A football. |
// HTML-INDEX-NEXT:
Specify the size
// HTML-INDEX-NEXT:enum (unnamed) : long long
// HTML-INDEX-NEXT: | Name | // HTML-INDEX-NEXT:Value | // HTML-INDEX-NEXT:Comments | // HTML-INDEX-NEXT:
|---|---|---|
| BigVal | // HTML-INDEX-NEXT:999999999999 | // HTML-INDEX-NEXT:
// HTML-INDEX-NEXT:
// HTML-INDEX-NEXT: A very large value |
// HTML-INDEX-NEXT:
Very long number
// HTML-INDEX-NEXT:enum ColorUserSpecified
// HTML-INDEX-NEXT: | Name | // HTML-INDEX-NEXT:Value | // HTML-INDEX-NEXT:
|---|---|
| RedUserSpecified | // HTML-INDEX-NEXT:'A' | // HTML-INDEX-NEXT:
| GreenUserSpecified | // HTML-INDEX-NEXT:2 | // HTML-INDEX-NEXT:
| BlueUserSpecified | // HTML-INDEX-NEXT:'C' | // HTML-INDEX-NEXT:
enum (unnamed)
// HTML-PERM-NEXT: | Name | // HTML-PERM-NEXT:Value | // HTML-PERM-NEXT:Comments | // HTML-PERM-NEXT:
|---|---|---|
| Read | // HTML-PERM-NEXT:1 | // HTML-PERM-NEXT:
// HTML-PERM-NEXT:
// HTML-PERM-NEXT: Permission to READ r |
// HTML-PERM-NEXT:
| Write | // HTML-PERM-NEXT:2 | // HTML-PERM-NEXT:
// HTML-PERM-NEXT:
// HTML-PERM-NEXT: Permission to WRITE w |
// HTML-PERM-NEXT:
| Execute | // HTML-PERM-NEXT:4 | // HTML-PERM-NEXT:
// HTML-PERM-NEXT:
// HTML-PERM-NEXT: Permission to EXECUTE x |
// HTML-PERM-NEXT:
File permission flags
// HTML-PERM-NEXT:enum AnimalType
// HTML-ANIMAL-NEXT: | Name | // HTML-ANIMAL-NEXT:Value | // HTML-ANIMAL-NEXT:Comments | // HTML-ANIMAL-NEXT:
|---|---|---|
| Dog | // HTML-ANIMAL-NEXT:0 | // HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT: Man's best friend |
// HTML-ANIMAL-NEXT:
| Cat | // HTML-ANIMAL-NEXT:1 | // HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT: Man's other best friend |
// HTML-ANIMAL-NEXT:
| Iguana | // HTML-ANIMAL-NEXT:2 | // HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT:
// HTML-ANIMAL-NEXT: A lizard |
// HTML-ANIMAL-NEXT:
specify what animal the class is
// HTML-ANIMAL-NEXT:enum Car
// HTML-VEHICLES-NEXT: | Name | // HTML-VEHICLES-NEXT:Value | // HTML-VEHICLES-NEXT:Comments | // HTML-VEHICLES-NEXT:
|---|---|---|
| Sedan | // HTML-VEHICLES-NEXT:0 | // HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT: Comment 1 |
// HTML-VEHICLES-NEXT:
| SUV | // HTML-VEHICLES-NEXT:1 | // HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT: Comment 2 |
// HTML-VEHICLES-NEXT:
| Pickup | // HTML-VEHICLES-NEXT:2 | // HTML-VEHICLES-NEXT:-- | // HTML-VEHICLES-NEXT:
| Hatchback | // HTML-VEHICLES-NEXT:3 | // HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT:
// HTML-VEHICLES-NEXT: Comment 4 |
// HTML-VEHICLES-NEXT:
specify type of car
// HTML-VEHICLES-NEXT: