10 #ifndef LLVM_CLANG_FRONTEND_FRONTENDOPTIONS_H
11 #define LLVM_CLANG_FRONTEND_FRONTENDOPTIONS_H
16 #include "llvm/ADT/StringRef.h"
19 #include <unordered_map>
88 llvm::MemoryBuffer *Buffer;
99 : File(File.str()), Buffer(nullptr), Kind(Kind), IsSystem(IsSystem) { }
101 bool IsSystem =
false)
102 : Buffer(buffer), Kind(Kind), IsSystem(IsSystem) { }
107 bool isEmpty()
const {
return File.empty() && Buffer ==
nullptr; }
109 bool isBuffer()
const {
return Buffer !=
nullptr; }
235 std::unordered_map<std::string,std::vector<std::string>>
PluginArgs;
Expand macros but not #includes.
std::string OutputFile
The output file, if any.
std::string ObjCMTWhiteListPath
Generate pre-compiled module.
Parse and perform semantic analysis.
Parse ASTs and print them.
Enable migration of ObjC methods to 'instancetype'.
std::string ASTDumpFilter
If given, filter dumped AST Decl nodes by this substring.
std::string FixItSuffix
If given, the new suffix for fix-it rewritten files.
Parse and apply any fixits to the source.
std::string FindPchSource
If non-empty, search the pch input file as it was a header.
Translate input source into HTML.
A source location that has been parsed on the command line.
std::vector< std::string > ASTMergeFiles
The list of AST files to merge.
Enable migration to add conforming protocols.
unsigned BuildingImplicitModule
Whether we are performing an implicit module build.
Print DeclContext and their Decls.
std::vector< std::string > ModulesEmbedFiles
The list of files to embed into the compiled module file.
unsigned RelocatablePCH
When generating PCH files, instruct the AST writer to create relocatable PCH files.
Generate LLVM IR, but do not emit anything.
unsigned ShowStats
Show frontend performance metrics and statistics.
Enable annotation of ObjCMethods of all kinds.
unsigned FixWhatYouCan
Apply fixes even if there are unfixable errors.
unsigned SkipFunctionBodies
Emit ARC errors even if the migrator can fix them.
unsigned FixAndRecompile
Apply fixes and recompile.
Dump out preprocessed tokens.
Enable migration to modern ObjC literals.
std::vector< std::string > Plugins
The list of plugins to load.
unsigned ShowTimers
Show timers for individual actions.
Only execute frontend initialization.
Print the "preamble" of the input file.
Enable migration to modern ObjC property.
unsigned ModulesEmbedAllFiles
Whether we should embed all used files into the PCM file.
unsigned FixOnlyWarnings
Apply fixes only for warnings.
Enable migration to modern ObjC readwrite property.
std::string AuxTriple
Auxiliary triple for CUDA compilation.
unsigned ARCMTMigrateEmitARCErrors
Enable inferring NS_DESIGNATED_INITIALIZER for ObjC methods.
Generate machine code, but don't emit anything.
std::vector< std::string > ModuleFiles
The list of additional prebuilt module files to load before processing the input. ...
ParsedSourceLocation CodeCompletionAt
If given, enable code completion at the provided location.
std::vector< FrontendInputFile > Inputs
The input files and their types.
unsigned IncludeTimestamps
Whether timestamps should be written to the produced PCH file.
Parse ASTs and view them in Graphviz.
annotate property with NS_RETURNS_INNER_POINTER
Enable migration to modern ObjC readonly property.
Parse ASTs and list Decl nodes.
std::unordered_map< std::string, std::vector< std::string > > PluginArgs
Args to pass to the plugins.
unsigned ASTDumpLookups
Whether we include lookup table dumps in AST dumps.
Enable migration to modern ObjC subscripting.
Load and verify that a PCH file is usable.
unsigned ShowVersion
Show the -version text.
unsigned GenerateGlobalModuleIndex
Whether we can generate the global module index if needed.
unsigned ShowHelp
Show the -help text.
std::string OverrideRecordLayoutsFile
File name of the file that will provide record layouts (in the format produced by -fdump-record-layou...
unsigned FixToTemporaries
Apply fixes to temporary files.
Options controlling the behavior of code completion.
frontend::ActionKind ProgramAction
The frontend action to perform.
Enable migration to NS_ENUM/NS_OPTIONS macros.
std::string ARCMTMigrateReportOut
unsigned UseGlobalModuleIndex
Whether we can use the global module index if available.
enum clang::FrontendOptions::@156 ARCMTAction
FrontendOptions - Options for controlling the behavior of the frontend.
Parse ASTs and dump them.
CodeCompleteOptions CodeCompleteOpts
std::vector< std::string > AddPluginActions
The list of plugin actions to run in addition to the normal action.
unsigned DisableFree
Disable memory freeing on exit.
Generate pre-compiled header.
Enable converting setter/getter expressions to property-dot syntx.
unsigned ASTDumpDecls
Whether we include declaration dumps in AST dumps.
std::string ActionName
The name of the action to run when using a plugin action.
Run one or more source code analyses.
std::vector< IntrusiveRefCntPtr< ModuleFileExtension > > ModuleFileExtensions
The list of module file extensions.
std::vector< std::string > LLVMArgs
A list of arguments to forward to LLVM's option processing; this should only be used for debugging an...
Dump information about a module file.
prefer 'atomic' property over 'nonatomic'.
Generate pre-tokenized header.
static InputKind getInputKindForExtension(StringRef Extension)
getInputKindForExtension - Return the appropriate input kind for a file extension.
use NS_NONATOMIC_IOSONLY for property 'atomic' attribute
std::vector< std::string > ModuleMapFiles
The list of module map files to load before processing the input.