clang 10.0.0git

PreprocessorOutputOptions.h
Go to the documentation of this file.
1 //===--- PreprocessorOutputOptions.h ----------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8
9 #ifndef LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H
10 #define LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H
11
12 namespace clang {
13
14 /// PreprocessorOutputOptions - Options for controlling the C preprocessor
15 /// output (e.g., -E).
16 class PreprocessorOutputOptions {
17 public:
18 unsigned ShowCPP : 1; ///< Print normal preprocessed output.
19 unsigned ShowComments : 1; ///< Show comments.
20 unsigned ShowLineMarkers : 1; ///< Show \#line markers.
21 unsigned UseLineDirectives : 1; ///< Use \#line instead of GCC-style \# N.
22 unsigned ShowMacroComments : 1; ///< Show comments, even in macros.
23 unsigned ShowMacros : 1; ///< Print macro definitions.
24 unsigned ShowIncludeDirectives : 1; ///< Print includes, imports etc. within preprocessed output.
25 unsigned RewriteIncludes : 1; ///< Preprocess include directives only.
26 unsigned RewriteImports : 1; ///< Include contents of transitively-imported modules.
27
28 public:
29 PreprocessorOutputOptions() {
30 ShowCPP = 0;
31 ShowComments = 0;
32 ShowLineMarkers = 1;
33 UseLineDirectives = 0;
34 ShowMacroComments = 0;
35 ShowMacros = 0;
36 ShowIncludeDirectives = 0;
37 RewriteIncludes = 0;
38 RewriteImports = 0;
39 }
40 };
41
42 } // end namespace clang
43
44 #endif
clang::PreprocessorOutputOptions
PreprocessorOutputOptions - Options for controlling the C preprocessor output (e.g., -E).
Definition: PreprocessorOutputOptions.h:16
clang::PreprocessorOutputOptions::RewriteIncludes
unsigned RewriteIncludes
Preprocess include directives only.
Definition: PreprocessorOutputOptions.h:25
clang::PreprocessorOutputOptions::ShowMacros
unsigned ShowMacros
Print macro definitions.
Definition: PreprocessorOutputOptions.h:23
clang::PreprocessorOutputOptions::ShowIncludeDirectives
unsigned ShowIncludeDirectives
Print includes, imports etc. within preprocessed output.
Definition: PreprocessorOutputOptions.h:24
clang::PreprocessorOutputOptions::PreprocessorOutputOptions
PreprocessorOutputOptions()
Definition: PreprocessorOutputOptions.h:29
clang::PreprocessorOutputOptions::UseLineDirectives
unsigned UseLineDirectives
Use #line instead of GCC-style # N.
Definition: PreprocessorOutputOptions.h:21
clang::PreprocessorOutputOptions::RewriteImports
unsigned RewriteImports
Include contents of transitively-imported modules.
Definition: PreprocessorOutputOptions.h:26
clang::PreprocessorOutputOptions::ShowComments
unsigned ShowComments
Show comments.
Definition: PreprocessorOutputOptions.h:19
clang
Dataflow Directional Tag Classes.
Definition: CFGReachabilityAnalysis.h:21
clang::PreprocessorOutputOptions::ShowMacroComments
unsigned ShowMacroComments
Show comments, even in macros.
Definition: PreprocessorOutputOptions.h:22
clang::PreprocessorOutputOptions::ShowLineMarkers
unsigned ShowLineMarkers
Show #line markers.
Definition: PreprocessorOutputOptions.h:20
clang::PreprocessorOutputOptions::ShowCPP
unsigned ShowCPP
Print normal preprocessed output.
Definition: PreprocessorOutputOptions.h:18