36 lines · cpp
1// RUN: rm -rf %t && mkdir -p %t2// RUN: clang-doc --extra-arg -std=c++20 --output=%t --format=json --executor=standalone %s3// RUN: FileCheck %s < %t/json/GlobalNamespace/_ZTV7MyClass.json4 5template<typename T>6concept Addable = requires(T a, T b) {7 { a + b };8};9 10template<typename T>11requires Addable<T>12struct MyClass;13 14// CHECK: "Name": "MyClass",15// CHECK-NEXT: "Namespace": [16// CHECK-NEXT: "GlobalNamespace"17// CHECK-NEXT: ],18// CHECK-NEXT: "Path": "GlobalNamespace",19// CHECK-NEXT: "TagType": "struct",20// CHECK-NEXT: "Template": {21// CHECK-NEXT: "Constraints": [22// CHECK-NEXT: {23// CHECK-NEXT: "End": true,24// CHECK-NEXT: "Expression": "Addable<T>",25// CHECK-NEXT: "Name": "Addable",26// CHECK-NEXT: "Path": "",27// CHECK-NEXT: "QualName": "Addable",28// CHECK-NEXT: "USR": "{{[0-9A-F]*}}"29// CHECK-NEXT: }30// CHECK-NEXT: ],31// CHECK-NEXT: "Parameters": [32// CHECK-NEXT: "typename T"33// CHECK-NEXT: ]34// CHECK-NEXT: },35// CHECK-NEXT: "USR": "{{[0-9A-F]*}}"36