18#ifndef ROOT_TModuleGenerator
19#define ROOT_TModuleGenerator
28 class CompilerInstance;
46 const std::string &shLibFileName,
54 void ParseArgs(
const std::vector<std::string> &args);
94 const std::string &headersClassesMapString,
const std::string &fwdDeclsString,
95 const std::string &extraIncludes,
bool hasCxxModule)
const;
101 const std::string &dictName,
102 const std::string &demangledDictName,
103 const std::vector<std::string> &headerArray,
104 const std::vector<std::string> &includePathArray,
105 const std::string &fwdDeclStringRAW,
106 const std::string &fwdDeclnArgsToKeepString,
107 const std::string &payloadCodeWrapped,
108 const std::string &headersClassesMapString,
109 const std::string &extraIncludes,
110 bool hasCxxModule)
const;
141 bool FindHeader(
const std::string& hdrName, std::string& hdrFullPath)
const;
147 std::ostream &out)
const;
149 std::ostream &out)
const;
151 clang::CompilerInstance *
fCI;
std::vector< std::string > fCompU
void WriteUmbrellaHeader(std::ostream &out) const
Write a header file pulling in the content of this module through a series of #defined,...
std::ostream & WriteHeaderArray(std::ostream &out) const
std::vector< std::pair< std::string, std::string > > StringPairVec_t
std::ostream & WriteStringVec(const std::vector< std::string > &vec, std::ostream &out) const
std::ostream & WriteStringPairVec(const StringPairVec_t &vecP, std::ostream &out) const
std::string fUmbrellaName
std::string fDictionaryName
const std::string & GetUmbrellaName() const
const std::vector< std::string > & GetIncludePaths() const
void WriteRegistrationSource(std::ostream &out, const std::string &fwdDeclnArgsToKeepString, const std::string &headersClassesMapString, const std::string &fwdDeclsString, const std::string &extraIncludes, bool hasCxxModule) const
ESourceFileKind GetSourceFileKind(const char *filename) const
Check whether the file's extension is compatible with C or C++.
std::ostream & WritePPIncludes(std::ostream &out) const
Write #include "header1.h" #include "header2.h" or, if inlining of headers is requested,...
TModuleGenerator(clang::CompilerInstance *CI, bool inlineHeader, const std::string &shLibFileName, bool isInPCH)
void ConvertToCppString(std::string &text) const
std::string fModuleFileName
std::ostream & WriteIncludePathArray(std::ostream &out) const
const std::vector< std::string > & GetHeaders() const
void WriteContentHeader(std::ostream &out) const
Write a header file describing the content of this module through a series of variables inside the na...
int GetErrorCount() const
std::vector< std::string > fCompI
std::vector< std::string > fHeaders
const std::string & GetModuleFileName() const
std::ostream & WritePPUndefines(std::ostream &out) const
Write #ifdef FOO.
void WriteRegistrationSourceImpl(std::ostream &out, const std::string &dictName, const std::string &demangledDictName, const std::vector< std::string > &headerArray, const std::vector< std::string > &includePathArray, const std::string &fwdDeclStringRAW, const std::string &fwdDeclnArgsToKeepString, const std::string &payloadCodeWrapped, const std::string &headersClassesMapString, const std::string &extraIncludes, bool hasCxxModule) const
std::ostream & WritePPCode(std::ostream &out) const
const std::string & GetDictionaryName() const
std::string fDemangledDictionaryName
clang::CompilerInstance * fCI
std::ostream & WriteDefinesArray(std::ostream &out) const
bool FindHeader(const std::string &hdrName, std::string &hdrFullPath) const
Return true if the header is found in the include paths in this case also fill the full path variable...
std::ostream & WriteUndefinesArray(std::ostream &out) const
const std::string & GetDemangledDictionaryName() const
void ParseArgs(const std::vector< std::string > &args)
Parse -I -D -U headers.h SomethingLinkdef.h.
std::string fModuleDirName
const std::string & GetContentName() const
const std::string & GetModuleDirName() const
std::ostream & WritePPDefines(std::ostream &out) const
Write #ifndef FOO.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...