ROOT
6.06/09
Reference Guide
|
#include <algorithm>
#include <iostream>
#include <sstream>
#include <stdlib.h>
#include <stdio.h>
#include <unordered_set>
#include "RConfigure.h"
#include "RConfig.h"
#include "Rtypes.h"
#include "compiledata.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/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/Sema/Sema.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 "../../../interpreter/llvm/src/tools/clang/lib/Sema/HackForDefaultTemplateArg.h"
#include "TMetaUtils.h"
Go to the source code of this file.
Namespaces | |
ROOT | |
Namespace for new ROOT classes and functions. | |
ROOT::TMetaUtils | |
Typedefs | |
using | TNCtxtFullQual = ROOT::TMetaUtils::TNormalizedCtxtImpl |
Functions | |
unsigned int | ROOT::TMetaUtils::GetNumberOfWarningsAndErrors () |
bool | IsTemplate (const clang::Decl &cl) |
const clang::CXXMethodDecl * | GetMethodWithProto (const clang::Decl *cinfo, const char *method, const char *proto, const cling::Interpreter &interp, bool diagnose) |
const clang::DeclContext * | GetEnclosingSpace (const clang::RecordDecl &cl) |
static clang::SourceLocation | getFinalSpellingLoc (clang::SourceManager &sourceManager, clang::SourceLocation sourceLoc) |
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"; More... | |
static bool | isTypeWithDefault (const clang::NamedDecl *nDecl) |
Check if this NamedDecl is a template parameter with a default argument. More... | |
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. More... | |
int | dumpDeclForAssert (const clang::Decl &D, const char *commentStart) |
static bool | hasSomeTypedefSomewhere (const clang::Type *T) |
static void | replaceEnvVars (const char *varname, std::string &txt) |
Reimplementation of TSystem::ExpandPathName() that cannot be used from TMetaUtils. More... | |
static int | TreatSingleTemplateArg (const clang::TemplateArgument &arg, std::string &argFwdDecl, const cling::Interpreter &interpreter, bool acceptStl=false) |
Variables | |
static unsigned int | gNumberOfWarningsAndErrors = 0 |
using TNCtxtFullQual = ROOT::TMetaUtils::TNormalizedCtxtImpl |
Definition at line 680 of file TMetaUtils.cxx.
|
static |
Definition at line 3518 of file TMetaUtils.cxx.
Referenced by KeepNParams().
|
static |
std::cout << "Are equal values?\n";
Definition at line 3619 of file TMetaUtils.cxx.
Referenced by KeepNParams().
int dumpDeclForAssert | ( | const clang::Decl & | D, |
const char * | commentStart | ||
) |
Definition at line 4052 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::GetComment().
const clang::DeclContext* GetEnclosingSpace | ( | const clang::RecordDecl & | cl | ) |
Definition at line 2124 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::WriteNamespaceHeader().
|
static |
Definition at line 3233 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::GetFileName().
const clang::CXXMethodDecl* GetMethodWithProto | ( | const clang::Decl * | cinfo, |
const char * | method, | ||
const char * | proto, | ||
const cling::Interpreter & | interp, | ||
bool | diagnose | ||
) |
Definition at line 1040 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::CheckPublicFuncWithProto(), ROOT::TMetaUtils::HasCustomConvStreamerMemberFunction(), ROOT::TMetaUtils::HasCustomStreamerMemberFunction(), and ROOT::TMetaUtils::HasIOConstructor().
|
static |
Definition at line 4369 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::ReSubstTemplateArg().
|
inline |
Definition at line 687 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::WriteClassInit().
|
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 3648 of file TMetaUtils.cxx.
Referenced by KeepNParams().
|
static |
This function allows to manipulate the number of arguments in the type of a template specialisation.
Definition at line 3664 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::GetNormalizedType().
|
static |
Reimplementation of TSystem::ExpandPathName() that cannot be used from TMetaUtils.
Definition at line 4838 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::SetPathsForRelocatability().
|
static |
Definition at line 5139 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::AST2SourceTools::FwdDeclFromRcdDecl().
|
static |
Definition at line 62 of file TMetaUtils.cxx.
Referenced by ROOT::TMetaUtils::GetNumberOfWarningsAndErrors(), and ROOT::TMetaUtils::LevelPrint().