xref: /openbsd-src/gnu/llvm/clang/include/clang/module.modulemap (revision 12c855180aad702bbcca06e0398d774beeafb155)
1module Clang_Analysis {
2  requires cplusplus
3  umbrella "Analysis"
4
5  textual header "Analysis/Analyses/ThreadSafetyOps.def"
6
7  module * { export * }
8
9  // FIXME: Exclude these headers to avoid pulling all of the AST matchers
10  // library into clang. Due to inline key functions in the headers,
11  // importing the AST matchers library gives a link dependency on the AST
12  // matchers (and thus the AST), which clang-format should not have.
13  exclude header "Analysis/Analyses/ExprMutationAnalyzer.h"
14}
15
16module Clang_AST {
17  requires cplusplus
18  umbrella "AST"
19
20  textual header "AST/BuiltinTypes.def"
21  textual header "AST/CXXRecordDeclDefinitionBits.def"
22  textual header "AST/OperationKinds.def"
23  textual header "AST/TypeLocNodes.def"
24
25  module * { export * }
26}
27
28module Clang_ASTMatchers { requires cplusplus umbrella "ASTMatchers" module * { export * } }
29
30module Clang_Basic {
31  requires cplusplus
32  umbrella "Basic"
33
34  textual header "Basic/AArch64SVEACLETypes.def"
35  textual header "Basic/BuiltinsAArch64.def"
36  textual header "Basic/BuiltinsAMDGPU.def"
37  textual header "Basic/BuiltinsAArch64NeonSVEBridge.def"
38  textual header "Basic/BuiltinsAArch64NeonSVEBridge_cg.def"
39  textual header "Basic/BuiltinsARM.def"
40  textual header "Basic/BuiltinsBPF.def"
41  textual header "Basic/Builtins.def"
42  textual header "Basic/BuiltinHeaders.def"
43  textual header "Basic/BuiltinsHexagon.def"
44  textual header "Basic/BuiltinsHexagonDep.def"
45  textual header "Basic/BuiltinsHexagonMapCustomDep.def"
46  textual header "Basic/BuiltinsLoongArch.def"
47  textual header "Basic/BuiltinsMips.def"
48  textual header "Basic/BuiltinsNEON.def"
49  textual header "Basic/BuiltinsNVPTX.def"
50  textual header "Basic/BuiltinsPPC.def"
51  textual header "Basic/BuiltinsRISCV.def"
52  textual header "Basic/BuiltinsRISCVVector.def"
53  textual header "Basic/BuiltinsSVE.def"
54  textual header "Basic/BuiltinsSystemZ.def"
55  textual header "Basic/BuiltinsVE.def"
56  textual header "Basic/BuiltinsVEVL.gen.def"
57  textual header "Basic/BuiltinsWebAssembly.def"
58  textual header "Basic/BuiltinsX86.def"
59  textual header "Basic/BuiltinsX86_64.def"
60  textual header "Basic/BuiltinsXCore.def"
61  textual header "Basic/CodeGenOptions.def"
62  textual header "Basic/DiagnosticOptions.def"
63  textual header "Basic/Features.def"
64  textual header "Basic/FPOptions.def"
65  textual header "Basic/MSP430Target.def"
66  textual header "Basic/LangOptions.def"
67  textual header "Basic/OpenCLExtensions.def"
68  textual header "Basic/OpenCLImageTypes.def"
69  textual header "Basic/OpenCLExtensionTypes.def"
70  textual header "Basic/OpenMPKinds.def"
71  textual header "Basic/OperatorKinds.def"
72  textual header "Basic/PPCTypes.def"
73  textual header "Basic/RISCVVTypes.def"
74  textual header "Basic/Sanitizers.def"
75  textual header "Basic/TargetCXXABI.def"
76  textual header "Basic/TransformTypeTraits.def"
77
78  module * { export * }
79}
80module Clang_Basic_TokenKinds {
81  requires cplusplus
82
83  header "Basic/TokenKinds.h"
84  textual header "Basic/TokenKinds.def"
85
86  export *
87}
88
89module Clang_CodeGen { requires cplusplus umbrella "CodeGen" module * { export * } }
90module Clang_Config { requires cplusplus umbrella "Config" module * { export * } }
91
92// Files for diagnostic groups are spread all over the include/clang/ tree, but
93// logically form a single module.
94module Clang_Diagnostics {
95  requires cplusplus
96
97  module All { header "Basic/AllDiagnostics.h" export * }
98  module Analysis { textual header "Analysis/Analyses/UnsafeBufferUsageGadgets.def" }
99  module AST { header "AST/ASTDiagnostic.h" export * }
100  module Comment { header "AST/CommentDiagnostic.h" export * }
101  module Driver { header "Driver/DriverDiagnostic.h" export * }
102  module Frontend { header "Frontend/FrontendDiagnostic.h" export * }
103  module Lex { header "Lex/LexDiagnostic.h" export * }
104  module Parse { header "Parse/ParseDiagnostic.h" export * }
105  module Sema { header "Sema/SemaDiagnostic.h" export * }
106  module Serialization { header "Serialization/SerializationDiagnostic.h" export * }
107  module Refactoring { header "Tooling/Refactoring/RefactoringDiagnostic.h" export * }
108}
109
110module Clang_Driver {
111  requires cplusplus
112  umbrella "Driver"
113
114  textual header "Driver/Types.def"
115
116  module * { export * }
117}
118
119module Clang_Edit { requires cplusplus umbrella "Edit" module * { export * } }
120module Clang_Format { requires cplusplus umbrella "Format" module * { export * } }
121
122module Clang_Frontend {
123  requires cplusplus
124  umbrella "Frontend"
125
126  textual header "Basic/LangStandards.def"
127
128  module * { export * }
129}
130
131module Clang_FrontendTool { requires cplusplus umbrella "FrontendTool" module * { export * } }
132module Clang_Index { requires cplusplus umbrella "Index" module * { export * } }
133module Clang_Lex { requires cplusplus umbrella "Lex" module * { export * } }
134module Clang_Parse { requires cplusplus umbrella "Parse" module * { export * } }
135module Clang_Rewrite { requires cplusplus umbrella "Rewrite/Core" module * { export * } }
136module Clang_RewriteFrontend { requires cplusplus umbrella "Rewrite/Frontend" module * { export * } }
137module Clang_Sema { requires cplusplus umbrella "Sema" module * { export * } }
138
139module Clang_Serialization {
140  requires cplusplus
141  umbrella "Serialization"
142
143  textual header "Serialization/TypeBitCodes.def"
144
145  module * { export * }
146}
147
148module Clang_StaticAnalyzer_Core {
149  requires cplusplus
150  umbrella "StaticAnalyzer/Core"
151
152  textual header "StaticAnalyzer/Core/Analyses.def"
153  textual header "StaticAnalyzer/Core/AnalyzerOptions.def"
154  textual header "StaticAnalyzer/Core/PathSensitive/SVals.def"
155  textual header "StaticAnalyzer/Core/PathSensitive/Symbols.def"
156  textual header "StaticAnalyzer/Core/PathSensitive/Regions.def"
157
158  module * { export * }
159}
160
161module Clang_StaticAnalyzer_Checkers {
162  requires cplusplus
163  umbrella "StaticAnalyzer/Checkers"
164  module * { export * }
165}
166
167module Clang_StaticAnalyzer_Frontend {
168  requires cplusplus
169  umbrella "StaticAnalyzer/Frontend"
170  module * { export * }
171}
172
173module Clang_Testing {
174  requires cplusplus
175  umbrella "Testing"
176  module * { export * }
177}
178
179module Clang_Tooling {
180  requires cplusplus umbrella "Tooling" module * { export * }
181  // FIXME: Exclude these headers to avoid pulling all of the AST matchers
182  // library into clang-format. Due to inline key functions in the headers,
183  // importing the AST matchers library gives a link dependency on the AST
184  // matchers (and thus the AST), which clang-format should not have.
185  exclude header "Tooling/RefactoringCallbacks.h"
186}
187
188module Clang_ToolingCore {
189  requires cplusplus
190  umbrella "Tooling/Core" module * { export * }
191}
192
193module Clang_ToolingInclusions {
194  requires cplusplus
195  umbrella "Tooling/Inclusions"
196  textual header "Tooling/Inclusions/CSymbolMap.inc"
197  textual header "Tooling/Inclusions/StdSymbolMap.inc"
198  module * { export * }
199}
200