ROOT
6.06/09
Reference Guide
|
#include "TCling.h"
#include "TClingBaseClassInfo.h"
#include "TClingCallFunc.h"
#include "TClingClassInfo.h"
#include "TClingDataMemberInfo.h"
#include "TClingMethodArgInfo.h"
#include "TClingMethodInfo.h"
#include "TClingTypedefInfo.h"
#include "TClingTypeInfo.h"
#include "TClingValue.h"
#include "TROOT.h"
#include "TApplication.h"
#include "TGlobal.h"
#include "TDataType.h"
#include "TClass.h"
#include "TClassEdit.h"
#include "TClassTable.h"
#include "TClingCallbacks.h"
#include "TBaseClass.h"
#include "TDataMember.h"
#include "TMemberInspector.h"
#include "TMethod.h"
#include "TMethodArg.h"
#include "TFunctionTemplate.h"
#include "TObjArray.h"
#include "TObjString.h"
#include "TString.h"
#include "THashList.h"
#include "TOrdCollection.h"
#include "TVirtualPad.h"
#include "TSystem.h"
#include "TVirtualMutex.h"
#include "TError.h"
#include "TEnv.h"
#include "TEnum.h"
#include "TEnumConstant.h"
#include "THashTable.h"
#include "RConfigure.h"
#include "compiledata.h"
#include "TMetaUtils.h"
#include "TVirtualCollectionProxy.h"
#include "TVirtualStreamerInfo.h"
#include "TListOfDataMembers.h"
#include "TListOfEnums.h"
#include "TListOfEnumsWithLock.h"
#include "TListOfFunctions.h"
#include "TListOfFunctionTemplates.h"
#include "TProtoClass.h"
#include "TStreamerInfo.h"
#include "ThreadLocalStorage.h"
#include "TFile.h"
#include "TKey.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclarationName.h"
#include "clang/AST/GlobalDecl.h"
#include "clang/AST/RecordLayout.h"
#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/AST/Type.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/CodeGen/ModuleBuilder.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Frontend/FrontendDiagnostic.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Sema/Lookup.h"
#include "clang/Sema/Sema.h"
#include "clang/Parse/Parser.h"
#include "cling/Interpreter/ClangInternalState.h"
#include "cling/Interpreter/DynamicLibraryManager.h"
#include "cling/Interpreter/Interpreter.h"
#include "cling/Interpreter/LookupHelper.h"
#include "cling/Interpreter/Value.h"
#include "cling/Interpreter/Transaction.h"
#include "cling/MetaProcessor/MetaProcessor.h"
#include "cling/Utils/AST.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/DynamicLibrary.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/Path.h"
#include <algorithm>
#include <iostream>
#include <cassert>
#include <map>
#include <set>
#include <stdexcept>
#include <stdint.h>
#include <fstream>
#include <sstream>
#include <string>
#include <typeinfo>
#include <unordered_map>
#include <utility>
#include <vector>
#include <cxxabi.h>
#include <limits.h>
#include <stdio.h>
Go to the source code of this file.
Macros | |
#define | R__DLLEXPORT |
Functions | |
clang::DeclContext * | TCling__DEBUG__getDeclContext (clang::Decl *D) |
clang::NamespaceDecl * | TCling__DEBUG__DCtoNamespace (clang::DeclContext *DC) |
clang::RecordDecl * | TCling__DEBUG__DCtoRecordDecl (clang::DeclContext *DC) |
void | TCling__DEBUG__dump (clang::DeclContext *DC) |
void | TCling__DEBUG__dump (clang::Decl *D) |
void | TCling__DEBUG__dump (clang::FunctionDecl *FD) |
void | TCling__DEBUG__decl_dump (void *D) |
void | TCling__DEBUG__printName (clang::Decl *D) |
bool | TCling__TEST_isInvalidDecl (clang::Decl *D) |
bool | TCling__TEST_isInvalidDecl (ClassInfo_t *input) |
static void | TCling__UpdateClassInfo (const NamedDecl *TD) |
Update TClingClassInfo for a class (e.g. upon seeing a definition). More... | |
void | TCling__GetNormalizedContext (const ROOT::TMetaUtils::TNormalizedCtxt *&normCtxt) |
void | TCling__UpdateListsOnCommitted (const cling::Transaction &T, cling::Interpreter *) |
void | TCling__UpdateListsOnUnloaded (const cling::Transaction &T) |
void | TCling__TransactionRollback (const cling::Transaction &T) |
void | TCling__LibraryLoadedRTTI (const void *dyLibHandle, const char *canonicalName) |
void | TCling__LibraryUnloadedRTTI (const void *dyLibHandle, const char *canonicalName) |
TObject * | TCling__GetObjectAddress (const char *Name, void *&LookupCtx) |
const Decl * | TCling__GetObjectDecl (TObject *obj) |
R__DLLEXPORT TInterpreter * | CreateInterpreter (void *interpLibHandle) |
R__DLLEXPORT void | DestroyInterpreter (TInterpreter *interp) |
int | TCling__AutoLoadCallback (const char *className) |
int | TCling__AutoParseCallback (const char *className) |
const char * | TCling__GetClassSharedLibs (const char *className) |
int | TCling__IsAutoLoadNamespaceCandidate (const clang::NamespaceDecl *nsDecl) |
int | TCling__CompileMacro (const char *fileName, const char *options) |
void | TCling__SplitAclicMode (const char *fileName, string &mode, string &args, string &io, string &fname) |
static clang::ClassTemplateDecl * | FindTemplateInNamespace (clang::Decl *decl) |
Find a template decl within N nested namespaces, 0<=N<inf Assumes 1 and only 1 template present and 1 and only 1 entity contained by the namespace. More... | |
void * | llvmLazyFunctionCreator (const std::string &mangled_name) |
Autoload a library provided the mangled name of a missing symbol. More... | |
int | TCling_GenerateDictionary (const std::vector< std::string > &classes, const std::vector< std::string > &headers, const std::vector< std::string > &fwdDecls, const std::vector< std::string > &unknown) |
int | TCling_GenerateDictionary (const std::string &className, const std::vector< std::string > &headers, const std::vector< std::string > &fwdDecls, const std::vector< std::string > &unknown) |
bool | TClingLookupHelper__AutoParse (const char *cname) |
Allow calling autoparsing from TMetaUtils. More... | |
bool | TClingLookupHelper__ExistingTypeCheck (const std::string &tname, std::string &result) |
Try hard to avoid looking up in the Cling database as this could enduce an unwanted autoparsing. More... | |
static const char * | FindLibraryName (void(*func)()) |
Wrapper around dladdr (and friends) More... | |
static bool | R__InitStreamerInfoFactory () |
Helper to initialize TVirtualStreamerInfo's factor early. More... | |
static cling::Interpreter::CompilationResult | ExecAutoParse (const char *what, Bool_t header, cling::Interpreter *interpreter) |
Parse the payload or header. More... | |
static void | ConstructorName (std::string &name, const clang::NamedDecl *decl, cling::Interpreter &interp, const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) |
Variables | |
R__EXTERN int | optind |
const char * | fantomline = "TRint::EndOfLineAction();" |
#define R__DLLEXPORT |
Definition at line 127 of file TCling.cxx.
|
static |
Definition at line 7299 of file TCling.cxx.
Referenced by TCling::GetFunctionName().
R__DLLEXPORT TInterpreter* CreateInterpreter | ( | void * | interpLibHandle | ) |
Definition at line 575 of file TCling.cxx.
Referenced by TROOT::InitInterpreter().
R__DLLEXPORT void DestroyInterpreter | ( | TInterpreter * | interp | ) |
Definition at line 581 of file TCling.cxx.
|
static |
Parse the payload or header.
Definition at line 5126 of file TCling.cxx.
Referenced by TCling::AutoParseImplRecurse().
|
static |
Wrapper around dladdr (and friends)
Definition at line 1220 of file TCling.cxx.
Referenced by TCling::LoadPCM(), and TCling::RegisterModule().
|
static |
Find a template decl within N nested namespaces, 0<=N<inf Assumes 1 and only 1 template present and 1 and only 1 entity contained by the namespace.
Example: ns1::ns2::..::nsN::myTemplate Returns nullptr in case of error
Definition at line 651 of file TCling.cxx.
Referenced by TCling::RegisterModule().
void* llvmLazyFunctionCreator | ( | const std::string & | mangled_name | ) |
Autoload a library provided the mangled name of a missing symbol.
Definition at line 668 of file TCling.cxx.
Referenced by TCling::TCling().
|
static |
Helper to initialize TVirtualStreamerInfo's factor early.
Use static initialization to insure only one TStreamerInfo is created.
Definition at line 1255 of file TCling.cxx.
Referenced by TCling::LoadPCM().
int TCling__AutoLoadCallback | ( | const char * | className | ) |
Definition at line 588 of file TCling.cxx.
Referenced by TClingCallbacks::tryAutoParseInternal().
int TCling__AutoParseCallback | ( | const char * | className | ) |
Definition at line 593 of file TCling.cxx.
Referenced by TClingCallbacks::LookupObject(), and TClingCallbacks::tryAutoParseInternal().
int TCling__CompileMacro | ( | const char * | fileName, |
const char * | options | ||
) |
Definition at line 615 of file TCling.cxx.
Referenced by TClingCallbacks::FileNotFound().
clang::NamespaceDecl* TCling__DEBUG__DCtoNamespace | ( | clang::DeclContext * | DC | ) |
Definition at line 201 of file TCling.cxx.
clang::RecordDecl* TCling__DEBUG__DCtoRecordDecl | ( | clang::DeclContext * | DC | ) |
Definition at line 204 of file TCling.cxx.
Definition at line 216 of file TCling.cxx.
void TCling__DEBUG__dump | ( | clang::DeclContext * | DC | ) |
Definition at line 207 of file TCling.cxx.
void TCling__DEBUG__dump | ( | clang::Decl * | D | ) |
Definition at line 210 of file TCling.cxx.
void TCling__DEBUG__dump | ( | clang::FunctionDecl * | FD | ) |
Definition at line 213 of file TCling.cxx.
clang::DeclContext* TCling__DEBUG__getDeclContext | ( | clang::Decl * | D | ) |
Definition at line 198 of file TCling.cxx.
void TCling__DEBUG__printName | ( | clang::Decl * | D | ) |
Definition at line 219 of file TCling.cxx.
const char* TCling__GetClassSharedLibs | ( | const char * | className | ) |
Definition at line 598 of file TCling.cxx.
Referenced by TClingCallbacks::tryAutoParseInternal().
void TCling__GetNormalizedContext | ( | const ROOT::TMetaUtils::TNormalizedCtxt *& | normCtxt | ) |
Definition at line 532 of file TCling.cxx.
Referenced by TClingCallbacks::LookupObject().
Definition at line 567 of file TCling.cxx.
Referenced by TClingCallbacks::tryFindROOTSpecialInternal().
const Decl* TCling__GetObjectDecl | ( | TObject * | obj | ) |
Definition at line 571 of file TCling.cxx.
Referenced by TClingCallbacks::tryFindROOTSpecialInternal().
int TCling__IsAutoLoadNamespaceCandidate | ( | const clang::NamespaceDecl * | nsDecl | ) |
Definition at line 610 of file TCling.cxx.
Definition at line 553 of file TCling.cxx.
Definition at line 559 of file TCling.cxx.
void TCling__SplitAclicMode | ( | const char * | fileName, |
string & | mode, | ||
string & | args, | ||
string & | io, | ||
string & | fname | ||
) |
Definition at line 622 of file TCling.cxx.
Referenced by TClingCallbacks::FileNotFound().
bool TCling__TEST_isInvalidDecl | ( | clang::Decl * | D | ) |
Definition at line 234 of file TCling.cxx.
bool TCling__TEST_isInvalidDecl | ( | ClassInfo_t * | input | ) |
Definition at line 237 of file TCling.cxx.
void TCling__TransactionRollback | ( | const cling::Transaction & | T | ) |
Definition at line 549 of file TCling.cxx.
Referenced by TClingCallbacks::TransactionRollback().
|
static |
Update TClingClassInfo for a class (e.g. upon seeing a definition).
Definition at line 343 of file TCling.cxx.
Referenced by TCling::HandleNewDecl().
void TCling__UpdateListsOnCommitted | ( | const cling::Transaction & | T, |
cling::Interpreter * | |||
) |
Definition at line 539 of file TCling.cxx.
void TCling__UpdateListsOnUnloaded | ( | const cling::Transaction & | T | ) |
Definition at line 545 of file TCling.cxx.
Referenced by TClingCallbacks::TransactionUnloaded().
int TCling_GenerateDictionary | ( | const std::vector< std::string > & | classes, |
const std::vector< std::string > & | headers, | ||
const std::vector< std::string > & | fwdDecls, | ||
const std::vector< std::string > & | unknown | ||
) |
Definition at line 678 of file TCling.cxx.
Referenced by TCling::GenerateDictionary(), and TCling_GenerateDictionary().
int TCling_GenerateDictionary | ( | const std::string & | className, |
const std::vector< std::string > & | headers, | ||
const std::vector< std::string > & | fwdDecls, | ||
const std::vector< std::string > & | unknown | ||
) |
Definition at line 818 of file TCling.cxx.
bool TClingLookupHelper__AutoParse | ( | const char * | cname | ) |
Allow calling autoparsing from TMetaUtils.
Definition at line 892 of file TCling.cxx.
Referenced by TCling::TCling().
bool TClingLookupHelper__ExistingTypeCheck | ( | const std::string & | tname, |
std::string & | result | ||
) |
Try hard to avoid looking up in the Cling database as this could enduce an unwanted autoparsing.
Definition at line 901 of file TCling.cxx.
Referenced by TCling::TCling().
const char* fantomline = "TRint::EndOfLineAction();" |
Definition at line 839 of file TCling.cxx.
R__EXTERN int optind |
Definition at line 301 of file TCling.cxx.