#include <algorithm>#include <iostream>#include <sstream>#include <stdlib.h>#include <stdio.h>#include <unordered_set>#include "RConfigure.h"#include <ROOT/RConfig.hxx>#include <ROOT/FoundationUtils.hxx>#include "Rtypes.h"#include "strlcpy.h"#include "RStl.h"#include "clang/AST/ASTContext.h"#include "clang/AST/Attr.h"#include "clang/AST/CXXInheritance.h"#include "clang/AST/Decl.h"#include "clang/AST/DeclTemplate.h"#include "clang/AST/Mangle.h"#include "clang/AST/Type.h"#include "clang/AST/TypeVisitor.h"#include "clang/Frontend/CompilerInstance.h"#include "clang/Lex/HeaderSearch.h"#include "clang/Lex/ModuleMap.h"#include "clang/Lex/Preprocessor.h"#include "clang/Lex/PreprocessorOptions.h"#include "clang/Sema/Lookup.h"#include "clang/Sema/Sema.h"#include "clang/Sema/SemaDiagnostic.h"#include "cling/Interpreter/LookupHelper.h"#include "cling/Interpreter/Transaction.h"#include "cling/Interpreter/Interpreter.h"#include "cling/Utils/AST.h"#include "llvm/Support/Path.h"#include "llvm/Support/FileSystem.h"#include "TClingUtils.h"#include <unistd.h>Classes | |
| class | ROOT::TMetaUtils::TNormalizedCtxtImpl |
Namespaces | |
| namespace | ROOT |
| This file contains a specialised ROOT message handler to test for diagnostic in unit tests. | |
| namespace | ROOT::TMetaUtils |
Typedefs | |
| using | TNCtxtFullQual = ROOT::TMetaUtils::TNormalizedCtxtImpl |
Functions | |
| static bool | areEqualTypes (const clang::TemplateArgument &tArg, llvm::SmallVectorImpl< clang::TemplateArgument > &preceedingTArgs, const clang::NamedDecl &tPar, const cling::Interpreter &interp, const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) |
| static bool | areEqualValues (const clang::TemplateArgument &tArg, const clang::NamedDecl &tPar) |
| std::cout << "Are equal values?\n"; | |
| static void | CreateNameTypeMap (const clang::CXXRecordDecl &cl, ROOT::MembersTypeMap_t &nameType) |
| Create the data member name-type map for given class. | |
| int | dumpDeclForAssert (const clang::Decl &D, const char *commentStart) |
| const clang::DeclContext * | GetEnclosingSpace (const clang::RecordDecl &cl) |
| static clang::SourceLocation | getFinalSpellingLoc (clang::SourceManager &sourceManager, clang::SourceLocation sourceLoc) |
| const clang::CXXMethodDecl * | GetMethodWithProto (const clang::Decl *cinfo, const char *method, const char *proto, const cling::Interpreter &interp, bool diagnose) |
| std::string | ROOT::TMetaUtils::GetRealPath (const std::string &path) |
| static bool | hasSomeTypedefSomewhere (const clang::Type *T) |
| bool | IsTemplate (const clang::Decl &cl) |
| static bool | isTypeWithDefault (const clang::NamedDecl *nDecl) |
| Check if this NamedDecl is a template parameter with a default argument. | |
| static void | KeepNParams (clang::QualType &normalizedType, const clang::QualType &vanillaType, const cling::Interpreter &interp, const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) |
| This function allows to manipulate the number of arguments in the type of a template specialisation. | |
| static bool | RecurseKeepNParams (clang::TemplateArgument &normTArg, const clang::TemplateArgument &tArg, const cling::Interpreter &interp, const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt, const clang::ASTContext &astCtxt) |
| static void | replaceEnvVars (const char *varname, std::string &txt) |
| Reimplementation of TSystem::ExpandPathName() that cannot be used from TMetaUtils. | |
| static int | TreatSingleTemplateArg (const clang::TemplateArgument &arg, std::string &argFwdDecl, const cling::Interpreter &interpreter, bool acceptStl=false) |
Definition at line 708 of file TClingUtils.cxx.
|
static |
Definition at line 3548 of file TClingUtils.cxx.
|
static |
std::cout << "Are equal values?\n";
Definition at line 3648 of file TClingUtils.cxx.
|
static |
Create the data member name-type map for given class.
Definition at line 1430 of file TClingUtils.cxx.
| int dumpDeclForAssert | ( | const clang::Decl & | D, |
| const char * | commentStart | ||
| ) |
Definition at line 4119 of file TClingUtils.cxx.
| const clang::DeclContext * GetEnclosingSpace | ( | const clang::RecordDecl & | cl | ) |
Definition at line 2190 of file TClingUtils.cxx.
|
static |
Definition at line 3272 of file TClingUtils.cxx.
| const clang::CXXMethodDecl * GetMethodWithProto | ( | const clang::Decl * | cinfo, |
| const char * | method, | ||
| const char * | proto, | ||
| const cling::Interpreter & | interp, | ||
| bool | diagnose | ||
| ) |
Definition at line 1097 of file TClingUtils.cxx.
|
static |
Definition at line 4503 of file TClingUtils.cxx.
|
inline |
Definition at line 713 of file TClingUtils.cxx.
|
static |
Check if this NamedDecl is a template parameter with a default argument.
This is a single interface to treat both integral and type parameters. Returns true if this is the case, false otherwise
Definition at line 3678 of file TClingUtils.cxx.
|
static |
This function allows to manipulate the number of arguments in the type of a template specialisation.
Definition at line 3746 of file TClingUtils.cxx.
|
static |
Definition at line 3696 of file TClingUtils.cxx.
|
static |
Reimplementation of TSystem::ExpandPathName() that cannot be used from TMetaUtils.
Definition at line 4976 of file TClingUtils.cxx.
|
static |
Definition at line 5318 of file TClingUtils.cxx.