ROOT
6.07/01
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 "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 "cling/Interpreter/Exception.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 int | HandleInterpreterException (cling::MetaProcessor *metaProcessor, const char *input_line, cling::Interpreter::CompilationResult &compRes, cling::Value *result) |
Let cling process a command line. 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 7301 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 5128 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().
|
static |
Let cling process a command line.
If the command is executed and the error is 0, then the return value is the int value corresponding to the result of the executed command (float and double return values will be truncated).
Definition at line 1837 of file TCling.cxx.
Referenced by TCling::Load(), TCling::LoadFile(), TCling::ProcessLine(), and TCling::UnloadFile().
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().
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.