brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.7 KiB · abe03a7 Raw
157 lines · cpp
1// RUN: rm -rf %t2// RUN: mkdir %t3 4// RUN: clang-doc --doxygen --executor=standalone %s -output=%t/docs5// RUN: cat %t/docs/index.yaml | FileCheck %s --check-prefix=YAML6 7// RUN: clang-doc --doxygen --executor=standalone %s -output=%t/docs --format=md8// RUN: cat %t/docs/GlobalNamespace/index.md | FileCheck %s --check-prefix=MD9 10// YAML: ---11// YAML-NEXT: USR:             '{{([0-9A-F]{40})}}'12// YAML-NEXT: ChildRecords:13// YAML-NEXT:   - Type:            Record14// YAML-NEXT:     Name:            'tuple'15// YAML-NEXT:     QualName:        'tuple'16// YAML-NEXT:     USR:             '{{([0-9A-F]{40})}}'17// YAML-NEXT:     Path:            'GlobalNamespace'18 19// MD: # Global Namespace20// MD: ## Functions21 22template <class... T>23void ParamPackFunction(T... args);24 25// YAML-NEXT: ChildFunctions:26// YAML-NEXT:  - USR:             '{{([0-9A-F]{40})}}'27// YAML-NEXT:    Name:            'ParamPackFunction'28// YAML-NEXT:    Location:29// YAML-NEXT:      - LineNumber:      [[# @LINE - 6]]30// YAML-NEXT:        Filename:        '{{.*}}'31// YAML-NEXT:    Params:32// YAML-NEXT:      - Type:33// YAML-NEXT:          Name:            'T...'34// YAML-NEXT:          QualName:        'T...'35// YAML-NEXT:        Name:            'args'36// YAML-NEXT:    ReturnType:37// YAML-NEXT:      Type:38// YAML-NEXT:        Name:            'void'39// YAML-NEXT:        QualName:        'void'40// YAML-NEXT:    Template:41// YAML-NEXT:      Params:42// YAML-NEXT:        - Contents:        'class... T'43 44// MD: ### ParamPackFunction45// MD: *void ParamPackFunction(T... args)*46 47template <typename T, int U = 1>48void function(T x) {}49 50// YAML-NEXT:   - USR:             '{{([0-9A-F]{40})}}'51// YAML-NEXT:     Name:            'function'52// YAML-NEXT:     DefLocation:53// YAML-NEXT:       LineNumber:      [[# @LINE - 5]]54// YAML-NEXT:       Filename:        '{{.*}}'55// YAML-NEXT:     Params:56// YAML-NEXT:       - Type:57// YAML-NEXT:           Name:            'T'58// YAML-NEXT:           QualName:        'T'59// YAML-NEXT:         Name:            'x'60// YAML-NEXT:     ReturnType:61// YAML-NEXT:       Type:62// YAML-NEXT:         Name:            'void'63// YAML-NEXT:         QualName:        'void'64// YAML-NEXT:     Template:65// YAML-NEXT:       Params:66// YAML-NEXT:         - Contents:        'typename T'67// YAML-NEXT:         - Contents:        'int U = 1'68 69// MD: ### function70// MD: *void function(T x)*71// MD: *Defined at {{.*}}templates.cpp#[[# @LINE - 23]]*72 73template <>74void function<bool, 0>(bool x) {}75 76// YAML-NEXT:   - USR:             '{{([0-9A-F]{40})}}'77// YAML-NEXT:     Name:            'function'78// YAML-NEXT:     DefLocation:79// YAML-NEXT:       LineNumber:      [[# @LINE - 6]]80// YAML-NEXT:       Filename:        '{{.*}}'81// YAML-NEXT:     Params:82// YAML-NEXT:       - Type:83// YAML-NEXT:           Name:            'bool'84// YAML-NEXT:           QualName:        'bool'85// YAML-NEXT:         Name:            'x'86// YAML-NEXT:     ReturnType:87// YAML-NEXT:       Type:88// YAML-NEXT:         Name:            'void'89// YAML-NEXT:         QualName:        'void'90// YAML-NEXT:     Template:91// YAML-NEXT:       Specialization:92// YAML-NEXT:         SpecializationOf: '{{([0-9A-F]{40})}}'93// YAML-NEXT:         Params:94// YAML-NEXT:           - Contents:        'bool'95// YAML-NEXT:           - Contents:        '0'96 97// MD: ### function98// MD: *void function(bool x)*99// MD: *Defined at {{.*}}templates.cpp#[[# @LINE - 26]]*100 101/// A Tuple type102///103/// Does Tuple things.104template <typename... Tys>105struct tuple {};106 107/// A function with a tuple parameter108///109/// \param t The input to func_with_tuple_param110tuple<int, int, bool> func_with_tuple_param(tuple<int, int, bool> t) { return t; }111 112// YAML-NEXT:   - USR:             '{{([0-9A-F]{40})}}'113// YAML-NEXT:    Name:            'func_with_tuple_param'114// YAML-NEXT:    Description:115// YAML-NEXT:      - Kind:            FullComment116// YAML-NEXT:        Children:117// YAML-NEXT:          - Kind:            ParagraphComment118// YAML-NEXT:            Children:119// YAML-NEXT:              - Kind:            TextComment120// YAML-NEXT:                Text:            ' A function with a tuple parameter'121// YAML-NEXT:          - Kind:            ParagraphComment122// YAML-NEXT:            Children:123// YAML-NEXT:              - Kind:            TextComment124// YAML-NEXT:          - Kind:            ParamCommandComment125// YAML-NEXT:            Direction:       '[in]'126// YAML-NEXT:            ParamName:       't'127// YAML-NEXT:            Children:128// YAML-NEXT:              - Kind:            ParagraphComment129// YAML-NEXT:                Children:130// YAML-NEXT:                  - Kind:            TextComment131// YAML-NEXT:                    Text:            ' The input to func_with_tuple_param'132// YAML-NEXT:    DefLocation:133// YAML-NEXT:      LineNumber:      [[# @LINE - 23]]134// YAML-NEXT:      Filename:135// YAML-NEXT:    Params:136// YAML-NEXT:      - Type:137// YAML-NEXT:          Type:            Record138// YAML-NEXT:          Name:            'tuple'139// YAML-NEXT:          QualName:        'tuple<int, int, bool>'140// YAML-NEXT:          USR:             '{{([0-9A-F]{40})}}'141// YAML-NEXT:          Path:            'GlobalNamespace'142// YAML-NEXT:        Name:            't'143// YAML-NEXT:    ReturnType:144// YAML-NEXT:      Type:145// YAML-NEXT:        Type:            Record146// YAML-NEXT:        Name:            'tuple'147// YAML-NEXT:        QualName:        'tuple<int, int, bool>'148// YAML-NEXT:        USR:             '{{([0-9A-F]{40})}}'149// YAML-NEXT:        Path:            'GlobalNamespace'150// YAML-NEXT: ...151 152// MD: ### func_with_tuple_param153// MD: *tuple<int, int, bool> func_with_tuple_param(tuple<int, int, bool> t)*154// MD: *Defined at {{.*}}templates.cpp#[[# @LINE - 44]]*155// MD:  A function with a tuple parameter156// MD: **t** The input to func_with_tuple_param157