ROOT  6.06/08
Reference Guide
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
TCling Class Reference

This class defines an interface to the cling C++ interpreter.

Cling is a full ANSI compliant C++-11 interpreter based on clang/LLVM technology.

Definition at line 92 of file TCling.h.

Classes

struct  CharPtrCmp_t
 
class  TUniqueString
 

Public Member Functions

virtual ~TCling ()
 Destroy the interpreter interface. More...
 
 TCling (const char *name, const char *title)
 Initialize the cling interpreter interface. More...
 
cling::Interpreter * GetInterpreter ()
 
void AddIncludePath (const char *path)
 Add the given path to the list of directories in which the interpreter looks for include files. More...
 
voidGetAutoLoadCallBack () const
 
voidSetAutoLoadCallBack (void *cb)
 
Int_t AutoLoad (const char *classname, Bool_t knowDictNotLoaded=kFALSE)
 Load library containing the specified class. More...
 
Int_t AutoLoad (const std::type_info &typeinfo, Bool_t knowDictNotLoaded=kFALSE)
 Load library containing the specified class. More...
 
Int_t AutoParse (const char *cls)
 Parse the headers relative to the class Returns 1 in case of success, 0 in case of failure. More...
 
voidLazyFunctionCreatorAutoload (const std::string &mangled_name)
 Autoload a library based on a missing symbol. More...
 
Bool_t IsAutoLoadNamespaceCandidate (const char *name)
 
Bool_t IsAutoLoadNamespaceCandidate (const clang::NamespaceDecl *nsDecl)
 
void ClearFileBusy ()
 Reset the interpreter internal state in case a previous action was not correctly terminated. More...
 
void ClearStack ()
 Delete existing temporary values. More...
 
Bool_t Declare (const char *code)
 Declare code to the interpreter, without any of the interpreter actions that could trigger a re-interpretation of the code. More...
 
void EnableAutoLoading ()
 Enable the automatic loading of shared libraries when a class is used that is stored in a not yet loaded library. More...
 
void EndOfLineAction ()
 It calls a "fantom" method to synchronize user keyboard input and ROOT prompt line. More...
 
TClassGetClass (const std::type_info &typeinfo, Bool_t load) const
 Demangle the name (from the typeinfo) and then request the class via the usual name based interface (TClass::GetClass). More...
 
Int_t GetExitCode () const
 
TEnvGetMapfile () const
 
Int_t GetMore () const
 
TClassGenerateTClass (const char *classname, Bool_t emulation, Bool_t silent=kFALSE)
 Generate a TClass for the given class. More...
 
TClassGenerateTClass (ClassInfo_t *classinfo, Bool_t silent=kFALSE)
 Generate a TClass for the given class. More...
 
Int_t GenerateDictionary (const char *classes, const char *includes=0, const char *options=0)
 Generate the dictionary for the C++ classes listed in the first argument (in a semi-colon separated list). More...
 
char * GetPrompt ()
 
const char * GetSharedLibs ()
 Return the list of shared libraries loaded into the process. More...
 
const char * GetClassSharedLibs (const char *cls)
 Get the list of shared libraries containing the code for class cls. More...
 
const char * GetSharedLibDeps (const char *lib)
 Get the list a libraries on which the specified lib depends. More...
 
const char * GetIncludePath ()
 Refresh the list of include paths known to the interpreter and return it with -I prepended. More...
 
virtual const char * GetSTLIncludePath () const
 Return the directory containing CINT's stl cintdlls. More...
 
TObjArrayGetRootMapFiles () const
 
unsigned long long GetInterpreterStateMarker () const
 
virtual void Initialize ()
 Initialize the interpreter, once TROOT::fInterpreter is set. More...
 
void InspectMembers (TMemberInspector &, const void *obj, const TClass *cl, Bool_t isTransient)
 Visit all members over members, recursing over base classes. More...
 
Bool_t IsLoaded (const char *filename) const
 Return true if the file has already been loaded by cint. More...
 
Int_t Load (const char *filenam, Bool_t system=kFALSE)
 Load a library file in cling's memory. More...
 
void LoadMacro (const char *filename, EErrorCode *error=0)
 Load a macro file in cling's memory. More...
 
Int_t LoadLibraryMap (const char *rootmapfile=0)
 Load map between class and library. More...
 
Int_t RescanLibraryMap ()
 Scan again along the dynamic path for library maps. More...
 
Int_t ReloadAllSharedLibraryMaps ()
 Reload the library map entries coming from all the loaded shared libraries, after first unloading the current ones. More...
 
Int_t UnloadAllSharedLibraryMaps ()
 Unload the library map entries coming from all the loaded shared libraries. More...
 
Int_t UnloadLibraryMap (const char *library)
 Unload library map entries coming from the specified library. More...
 
Long_t ProcessLine (const char *line, EErrorCode *error=0)
 Let cling process a command line. More...
 
Long_t ProcessLineAsynch (const char *line, EErrorCode *error=0)
 Let cling process a command line asynch. More...
 
Long_t ProcessLineSynch (const char *line, EErrorCode *error=0)
 Let cling process a command line synchronously, i.e we are waiting it will be finished. More...
 
void PrintIntro ()
 No-op; see TRint instead. More...
 
void RegisterModule (const char *modulename, const char **headers, const char **includePaths, const char *payloadCode, const char *fwdDeclsCode, void(*triggerFunc)(), const FwdDeclArgsToKeepCollection_t &fwdDeclsArgToSkip, const char **classesHeaders)
 Inject the module named "modulename" into cling; load all headers. More...
 
void RegisterTClassUpdate (TClass *oldcl, DictFuncPtr_t dict)
 Register classes that already existed prior to their dictionary loading and that already had a ClassInfo (and thus would not be refresh via UpdateClassInfo. More...
 
void UnRegisterTClassUpdate (const TClass *oldcl)
 If the dictionary is loaded, we can remove the class from the list (otherwise the class might be loaded twice). More...
 
Int_t SetClassSharedLibs (const char *cls, const char *libs)
 Register the autoloading information for a class. More...
 
void SetGetline (const char *(*getlineFunc)(const char *prompt), void(*histaddFunc)(const char *line))
 Set a getline function to call when input is needed. More...
 
void Reset ()
 Pressing Ctrl+C should forward here. More...
 
void ResetAll ()
 Reset the Cling state to its initial state. More...
 
void ResetGlobals ()
 Reset in Cling the list of global variables to the state saved by the last call to TCling::SaveGlobalsContext(). More...
 
void ResetGlobalVar (void *obj)
 Reset the Cling 'user' global objects/variables state to the state saved by the last call to TCling::SaveGlobalsContext(). More...
 
void RewindDictionary ()
 Rewind Cling dictionary to the point where it was before executing the current macro. More...
 
Int_t DeleteGlobal (void *obj)
 Delete obj from Cling symbol table so it cannot be accessed anymore. More...
 
Int_t DeleteVariable (const char *name)
 Undeclare obj called name. More...
 
void SaveContext ()
 Save the current Cling state. More...
 
void SaveGlobalsContext ()
 Save the current Cling state of global objects. More...
 
void UpdateListOfGlobals ()
 No op: see TClingCallbacks (used to update the list of globals) More...
 
void UpdateListOfGlobalFunctions ()
 No op: see TClingCallbacks (used to update the list of global functions) More...
 
void UpdateListOfTypes ()
 No op: see TClingCallbacks (used to update the list of types) More...
 
void SetClassInfo (TClass *cl, Bool_t reload=kFALSE)
 Set pointer to the TClingClassInfo in TClass. More...
 
Bool_t CheckClassInfo (const char *name, Bool_t autoload, Bool_t isClassOrNamespaceOnly=kFALSE)
 Checks if an entity with the specified name is defined in Cling. More...
 
Bool_t CheckClassTemplate (const char *name)
 Return true if there is a class template by the given name ... More...
 
Long_t Calc (const char *line, EErrorCode *error=0)
 Directly execute an executable statement (e.g. More...
 
void CreateListOfBaseClasses (TClass *cl) const
 Create list of pointers to base class(es) for TClass cl. More...
 
void CreateListOfDataMembers (TClass *cl) const
 Create list of pointers to data members for TClass cl. More...
 
void CreateListOfMethods (TClass *cl) const
 Create list of pointers to methods for TClass cl. More...
 
void CreateListOfMethodArgs (TFunction *m) const
 Create list of pointers to method arguments for TMethod m. More...
 
void UpdateListOfMethods (TClass *cl) const
 Update the list of pointers to method for TClass cl This is now a nop. More...
 
void UpdateListOfDataMembers (TClass *cl) const
 Update the list of pointers to data members for TClass cl This is now a nop. More...
 
virtual DeclId_t GetDataMember (ClassInfo_t *cl, const char *name) const
 Return pointer to cling Decl of global/static variable that is located at the address given by addr. More...
 
virtual DeclId_t GetDataMemberAtAddr (const void *addr) const
 Return pointer to cling DeclId for a data member with a given name. More...
 
virtual DeclId_t GetDataMemberWithValue (const void *ptrvalue) const
 NOT IMPLEMENTED. More...
 
virtual DeclId_t GetEnum (TClass *cl, const char *name) const
 Return pointer to cling Decl of global/static variable that is located at the address given by addr. More...
 
virtual TEnumCreateEnum (void *VD, TClass *cl) const
 
virtual void UpdateEnumConstants (TEnum *enumObj, TClass *cl) const
 
virtual void LoadEnums (TListOfEnums &cl) const
 Create list of pointers to enums for TClass cl. More...
 
TString GetMangledName (TClass *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)
 Return the cling mangled name for a method of a class with parameters params (params is a string of actual arguments, not formal ones). More...
 
TString GetMangledNameWithPrototype (TClass *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)
 Return the cling mangled name for a method of a class with a certain prototype, i.e. More...
 
voidGetInterfaceMethod (TClass *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)
 Return pointer to cling interface function for a method of a class with parameters params (params is a string of actual arguments, not formal ones). More...
 
voidGetInterfaceMethodWithPrototype (TClass *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)
 Return pointer to cling interface function for a method of a class with a certain prototype, i.e. More...
 
DeclId_t GetFunction (ClassInfo_t *cl, const char *funcname)
 Return pointer to cling interface function for a method of a class with a certain name. More...
 
DeclId_t GetFunctionWithPrototype (ClassInfo_t *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)
 Return pointer to cling interface function for a method of a class with a certain prototype, i.e. More...
 
DeclId_t GetFunctionWithValues (ClassInfo_t *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)
 Return pointer to cling DeclId for a method of a class with a certain prototype, i.e. More...
 
DeclId_t GetFunctionTemplate (ClassInfo_t *cl, const char *funcname)
 Return pointer to cling interface function for a method of a class with a certain name. More...
 
void GetFunctionOverloads (ClassInfo_t *cl, const char *funcname, std::vector< DeclId_t > &res) const
 Insert overloads of name in cl to res. More...
 
virtual void LoadFunctionTemplates (TClass *cl) const
 Create list of pointers to function templates for TClass cl. More...
 
void GetInterpreterTypeName (const char *name, std::string &output, Bool_t full=kFALSE)
 The 'name' is known to the interpreter, this function returns the internal version of this name (usually just resolving typedefs) This is used in particular to synchronize between the name used by rootcling and by the run-time environment (TClass) Return 0 if the name is not known. More...
 
void Execute (const char *function, const char *params, int *error=0)
 Execute a global function with arguments params. More...
 
void Execute (TObject *obj, TClass *cl, const char *method, const char *params, int *error=0)
 
void Execute (TObject *obj, TClass *cl, const char *method, const char *params, Bool_t objectIsConst, int *error=0)
 Execute a method from class cl with arguments params. More...
 
void Execute (TObject *obj, TClass *cl, TMethod *method, TObjArray *params, int *error=0)
 Execute a method from class cl with the arguments in array params (params[0] ... More...
 
void ExecuteWithArgsAndReturn (TMethod *method, void *address, const void *args[]=0, int nargs=0, void *ret=0) const
 
Long_t ExecuteMacro (const char *filename, EErrorCode *error=0)
 Execute a cling macro. More...
 
void RecursiveRemove (TObject *obj)
 Delete object from cling symbol table so it can not be used anymore. More...
 
Bool_t IsErrorMessagesEnabled () const
 If error messages are disabled, the interpreter should suppress its failures and warning messages from stdout. More...
 
Bool_t SetErrorMessages (Bool_t enable=kTRUE)
 If error messages are disabled, the interpreter should suppress its failures and warning messages from stdout. More...
 
Bool_t IsProcessLineLocked () const
 
void SetProcessLineLock (Bool_t lock=kTRUE)
 
const char * TypeName (const char *typeDesc)
 Return the absolute type of typeDesc. More...
 
void UpdateClassInfoWithDecl (const void *vTD)
 Internal function. Inform a TClass about its new TagDecl or NamespaceDecl. More...
 
virtual int DisplayClass (FILE *fout, const char *name, int base, int start) const
 
virtual int DisplayIncludePath (FILE *fout) const
 Interface to cling function. More...
 
virtual voidFindSym (const char *entry) const
 Interface to cling function. More...
 
virtual void GenericError (const char *error) const
 Let the interpreter issue a generic error, and set its error state. More...
 
virtual Long_t GetExecByteCode () const
 This routines used to return the address of the internal wrapper function (of the interpreter) that was used to call all the interpreted functions that were bytecode compiled (no longer interpreted line by line). More...
 
virtual Long_t Getgvp () const
 Interface to the CINT global object pointer which was controlling the behavior of the wrapper around the calls to operator new and the constructor and operator delete and the destructor. More...
 
virtual const char * Getp2f2funcname (void *receiver) const
 
virtual const char * GetTopLevelMacroName () const
 Return the file name of the current un-included interpreted file. More...
 
virtual const char * GetCurrentMacroName () const
 Return the file name of the currently interpreted file, included or not. More...
 
virtual int GetSecurityError () const
 Interface to cling function. More...
 
virtual int LoadFile (const char *path) const
 Load a source file or library called path into the interpreter. More...
 
virtual Bool_t LoadText (const char *text) const
 Load the declarations from text into the interpreter. More...
 
virtual const char * MapCppName (const char *) const
 Interface to cling function. More...
 
virtual void SetAlloclockfunc (void(*)()) const
 [Place holder for Mutex Lock] Provide the interpreter with a way to acquire a lock used to protect critical section of its code (non-thread safe parts). More...
 
virtual void SetAllocunlockfunc (void(*)()) const
 [Place holder for Mutex Unlock] Provide the interpreter with a way to release a lock used to protect critical section of its code (non-thread safe parts). More...
 
virtual int SetClassAutoloading (int) const
 Enable/Disable the Autoloading of libraries. More...
 
virtual int SetClassAutoparsing (int)
 Enable/Disable the Autoparsing of headers. More...
 
Bool_t IsAutoParsingSuspended () const
 
virtual void SetErrmsgcallback (void *p) const
 Set a callback to receive error messages. More...
 
virtual void Setgvp (Long_t) const
 Interface to the cling global object pointer which was controlling the behavior of the wrapper around the calls to operator new and the constructor and operator delete and the destructor. More...
 
virtual void SetRTLD_NOW () const
 
virtual void SetRTLD_LAZY () const
 
virtual void SetTempLevel (int val) const
 Create / close a scope for temporaries. More...
 
virtual int UnloadFile (const char *path) const
 
TInterpreterValueCreateTemporary ()
 The created temporary must be deleted by the caller. More...
 
void RegisterTemporary (const TInterpreterValue &value)
 
void RegisterTemporary (const cling::Value &value)
 Register value as a temporary, extending its lifetime to that of the interpreter. More...
 
const ROOT::TMetaUtils::TNormalizedCtxtGetNormalizedContext () const
 
TObjectGetObjectAddress (const char *Name, void *&LookupCtx)
 If the interpreter encounters Name, check whether that is an object ROOT could retrieve. More...
 
virtual EReturnType MethodCallReturnType (TFunction *func) const
 
virtual void GetFunctionName (const clang::FunctionDecl *decl, std::string &name) const
 
virtual DeclId_t GetDeclId (CallFunc_t *info) const
 Return a unique identifier of the declaration represented by the CallFunc. More...
 
virtual void CallFunc_Delete (CallFunc_t *func) const
 
virtual void CallFunc_Exec (CallFunc_t *func, void *address) const
 
virtual void CallFunc_Exec (CallFunc_t *func, void *address, TInterpreterValue &val) const
 
virtual void CallFunc_ExecWithReturn (CallFunc_t *func, void *address, void *ret) const
 
virtual void CallFunc_ExecWithArgsAndReturn (CallFunc_t *func, void *address, const void *args[]=0, int nargs=0, void *ret=0) const
 
virtual Long_t CallFunc_ExecInt (CallFunc_t *func, void *address) const
 
virtual Long64_t CallFunc_ExecInt64 (CallFunc_t *func, void *address) const
 
virtual Double_t CallFunc_ExecDouble (CallFunc_t *func, void *address) const
 
virtual CallFunc_t * CallFunc_Factory () const
 
virtual CallFunc_t * CallFunc_FactoryCopy (CallFunc_t *func) const
 
virtual MethodInfo_t * CallFunc_FactoryMethod (CallFunc_t *func) const
 
virtual void CallFunc_IgnoreExtraArgs (CallFunc_t *func, bool ignore) const
 
virtual void CallFunc_Init (CallFunc_t *func) const
 
virtual bool CallFunc_IsValid (CallFunc_t *func) const
 
virtual CallFuncIFacePtr_t CallFunc_IFacePtr (CallFunc_t *func) const
 
virtual void CallFunc_ResetArg (CallFunc_t *func) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, Long_t param) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, ULong_t param) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, Float_t param) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, Double_t param) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, Long64_t param) const
 
virtual void CallFunc_SetArg (CallFunc_t *func, ULong64_t param) const
 
virtual void CallFunc_SetArgArray (CallFunc_t *func, Long_t *paramArr, Int_t nparam) const
 
virtual void CallFunc_SetArgs (CallFunc_t *func, const char *param) const
 
virtual void CallFunc_SetFunc (CallFunc_t *func, ClassInfo_t *info, const char *method, const char *params, Long_t *Offset) const
 
virtual void CallFunc_SetFunc (CallFunc_t *func, ClassInfo_t *info, const char *method, const char *params, bool objectIsConst, Long_t *Offset) const
 
virtual void CallFunc_SetFunc (CallFunc_t *func, MethodInfo_t *info) const
 
virtual void CallFunc_SetFuncProto (CallFunc_t *func, ClassInfo_t *info, const char *method, const char *proto, Long_t *Offset, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch) const
 Interface to cling function. More...
 
virtual void CallFunc_SetFuncProto (CallFunc_t *func, ClassInfo_t *info, const char *method, const char *proto, bool objectIsConst, Long_t *Offset, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch) const
 Interface to cling function. More...
 
virtual void CallFunc_SetFuncProto (CallFunc_t *func, ClassInfo_t *info, const char *method, const std::vector< TypeInfo_t *> &proto, Long_t *Offset, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch) const
 Interface to cling function. More...
 
virtual void CallFunc_SetFuncProto (CallFunc_t *func, ClassInfo_t *info, const char *method, const std::vector< TypeInfo_t *> &proto, bool objectIsConst, Long_t *Offset, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch) const
 Interface to cling function. More...
 
virtual DeclId_t GetDeclId (ClassInfo_t *info) const
 Return a (almost) unique identifier of the declaration represented by the ClassInfo. More...
 
virtual Bool_t ClassInfo_Contains (ClassInfo_t *info, DeclId_t declid) const
 Return true if the entity pointed to by 'declid' is declared in the context described by 'info'. More...
 
virtual Long_t ClassInfo_ClassProperty (ClassInfo_t *info) const
 
virtual void ClassInfo_Delete (ClassInfo_t *info) const
 
virtual void ClassInfo_Delete (ClassInfo_t *info, void *arena) const
 
virtual void ClassInfo_DeleteArray (ClassInfo_t *info, void *arena, bool dtorOnly) const
 
virtual void ClassInfo_Destruct (ClassInfo_t *info, void *arena) const
 
virtual ClassInfo_t * ClassInfo_Factory (Bool_t all=kTRUE) const
 
virtual ClassInfo_t * ClassInfo_Factory (ClassInfo_t *cl) const
 
virtual ClassInfo_t * ClassInfo_Factory (const char *name) const
 
virtual Long_t ClassInfo_GetBaseOffset (ClassInfo_t *fromDerived, ClassInfo_t *toBase, void *address, bool isDerivedObject) const
 
virtual int ClassInfo_GetMethodNArg (ClassInfo_t *info, const char *method, const char *proto, Bool_t objectIsConst=false, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch) const
 
virtual bool ClassInfo_HasDefaultConstructor (ClassInfo_t *info) const
 
virtual bool ClassInfo_HasMethod (ClassInfo_t *info, const char *name) const
 
virtual void ClassInfo_Init (ClassInfo_t *info, const char *funcname) const
 
virtual void ClassInfo_Init (ClassInfo_t *info, int tagnum) const
 
virtual bool ClassInfo_IsBase (ClassInfo_t *info, const char *name) const
 
virtual bool ClassInfo_IsEnum (const char *name) const
 
virtual bool ClassInfo_IsLoaded (ClassInfo_t *info) const
 
virtual bool ClassInfo_IsValid (ClassInfo_t *info) const
 
virtual bool ClassInfo_IsValidMethod (ClassInfo_t *info, const char *method, const char *proto, Long_t *offset, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
 
virtual bool ClassInfo_IsValidMethod (ClassInfo_t *info, const char *method, const char *proto, Bool_t objectIsConst, Long_t *offset, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
 
virtual int ClassInfo_Next (ClassInfo_t *info) const
 
virtual voidClassInfo_New (ClassInfo_t *info) const
 
virtual voidClassInfo_New (ClassInfo_t *info, int n) const
 
virtual voidClassInfo_New (ClassInfo_t *info, int n, void *arena) const
 
virtual voidClassInfo_New (ClassInfo_t *info, void *arena) const
 
virtual Long_t ClassInfo_Property (ClassInfo_t *info) const
 
virtual int ClassInfo_Size (ClassInfo_t *info) const
 
virtual Long_t ClassInfo_Tagnum (ClassInfo_t *info) const
 
virtual const char * ClassInfo_FileName (ClassInfo_t *info) const
 
virtual const char * ClassInfo_FullName (ClassInfo_t *info) const
 
virtual const char * ClassInfo_Name (ClassInfo_t *info) const
 
virtual const char * ClassInfo_Title (ClassInfo_t *info) const
 
virtual const char * ClassInfo_TmpltName (ClassInfo_t *info) const
 
virtual void BaseClassInfo_Delete (BaseClassInfo_t *bcinfo) const
 
virtual BaseClassInfo_t * BaseClassInfo_Factory (ClassInfo_t *info) const
 
virtual BaseClassInfo_t * BaseClassInfo_Factory (ClassInfo_t *derived, ClassInfo_t *base) const
 
virtual int BaseClassInfo_Next (BaseClassInfo_t *bcinfo) const
 
virtual int BaseClassInfo_Next (BaseClassInfo_t *bcinfo, int onlyDirect) const
 
virtual Long_t BaseClassInfo_Offset (BaseClassInfo_t *toBaseClassInfo, void *address, bool isDerivedObject) const
 
virtual Long_t BaseClassInfo_Property (BaseClassInfo_t *bcinfo) const
 
virtual Long_t BaseClassInfo_Tagnum (BaseClassInfo_t *bcinfo) const
 
virtual ClassInfo_t * BaseClassInfo_ClassInfo (BaseClassInfo_t *) const
 
virtual const char * BaseClassInfo_FullName (BaseClassInfo_t *bcinfo) const
 
virtual const char * BaseClassInfo_Name (BaseClassInfo_t *bcinfo) const
 
virtual const char * BaseClassInfo_TmpltName (BaseClassInfo_t *bcinfo) const
 
virtual DeclId_t GetDeclId (DataMemberInfo_t *info) const
 Return a unique identifier of the declaration represented by the MethodInfo. More...
 
virtual int DataMemberInfo_ArrayDim (DataMemberInfo_t *dminfo) const
 
virtual void DataMemberInfo_Delete (DataMemberInfo_t *dminfo) const
 
virtual DataMemberInfo_t * DataMemberInfo_Factory (ClassInfo_t *clinfo=0) const
 
virtual DataMemberInfo_t * DataMemberInfo_Factory (DeclId_t declid, ClassInfo_t *clinfo) const
 
virtual DataMemberInfo_t * DataMemberInfo_FactoryCopy (DataMemberInfo_t *dminfo) const
 
virtual bool DataMemberInfo_IsValid (DataMemberInfo_t *dminfo) const
 
virtual int DataMemberInfo_MaxIndex (DataMemberInfo_t *dminfo, Int_t dim) const
 
virtual int DataMemberInfo_Next (DataMemberInfo_t *dminfo) const
 
virtual Long_t DataMemberInfo_Offset (DataMemberInfo_t *dminfo) const
 
virtual Long_t DataMemberInfo_Property (DataMemberInfo_t *dminfo) const
 
virtual Long_t DataMemberInfo_TypeProperty (DataMemberInfo_t *dminfo) const
 
virtual int DataMemberInfo_TypeSize (DataMemberInfo_t *dminfo) const
 
virtual const char * DataMemberInfo_TypeName (DataMemberInfo_t *dminfo) const
 
virtual const char * DataMemberInfo_TypeTrueName (DataMemberInfo_t *dminfo) const
 
virtual const char * DataMemberInfo_Name (DataMemberInfo_t *dminfo) const
 
virtual const char * DataMemberInfo_Title (DataMemberInfo_t *dminfo) const
 
virtual const char * DataMemberInfo_ValidArrayIndex (DataMemberInfo_t *dminfo) const
 
virtual void SetDeclAttr (DeclId_t, const char *)
 
virtual DeclId_t GetDeclId (FuncTempInfo_t *info) const
 Return a unique identifier of the declaration represented by the FuncTempInfo. More...
 
virtual void FuncTempInfo_Delete (FuncTempInfo_t *) const
 Delete the FuncTempInfo_t. More...
 
virtual FuncTempInfo_t * FuncTempInfo_Factory (DeclId_t declid) const
 Construct a FuncTempInfo_t. More...
 
virtual FuncTempInfo_t * FuncTempInfo_FactoryCopy (FuncTempInfo_t *) const
 Construct a FuncTempInfo_t. More...
 
virtual Bool_t FuncTempInfo_IsValid (FuncTempInfo_t *) const
 Check validity of a FuncTempInfo_t. More...
 
virtual UInt_t FuncTempInfo_TemplateNargs (FuncTempInfo_t *) const
 Return the maximum number of template arguments of the function template described by ft_info. More...
 
virtual UInt_t FuncTempInfo_TemplateMinReqArgs (FuncTempInfo_t *) const
 Return the number of required template arguments of the function template described by ft_info. More...
 
virtual Long_t FuncTempInfo_Property (FuncTempInfo_t *) const
 Return the property of the function template. More...
 
virtual void FuncTempInfo_Name (FuncTempInfo_t *, TString &name) const
 Return the name of this function template. More...
 
virtual void FuncTempInfo_Title (FuncTempInfo_t *, TString &name) const
 Return the comments associates with this function template. More...
 
virtual DeclId_t GetDeclId (MethodInfo_t *info) const
 Return a unique identifier of the declaration represented by the MethodInfo. More...
 
virtual void MethodInfo_CreateSignature (MethodInfo_t *minfo, TString &signature) const
 
virtual void MethodInfo_Delete (MethodInfo_t *minfo) const
 Interface to cling function. More...
 
virtual MethodInfo_t * MethodInfo_Factory () const
 
virtual MethodInfo_t * MethodInfo_Factory (ClassInfo_t *clinfo) const
 
virtual MethodInfo_t * MethodInfo_Factory (DeclId_t declid) const
 
virtual MethodInfo_t * MethodInfo_FactoryCopy (MethodInfo_t *minfo) const
 
virtual voidMethodInfo_InterfaceMethod (MethodInfo_t *minfo) const
 
virtual bool MethodInfo_IsValid (MethodInfo_t *minfo) const
 
virtual int MethodInfo_NArg (MethodInfo_t *minfo) const
 
virtual int MethodInfo_NDefaultArg (MethodInfo_t *minfo) const
 
virtual int MethodInfo_Next (MethodInfo_t *minfo) const
 
virtual Long_t MethodInfo_Property (MethodInfo_t *minfo) const
 
virtual Long_t MethodInfo_ExtraProperty (MethodInfo_t *minfo) const
 
virtual TypeInfo_t * MethodInfo_Type (MethodInfo_t *minfo) const
 
virtual EReturnType MethodInfo_MethodCallReturnType (MethodInfo_t *minfo) const
 
virtual const char * MethodInfo_GetMangledName (MethodInfo_t *minfo) const
 
virtual const char * MethodInfo_GetPrototype (MethodInfo_t *minfo) const
 
virtual const char * MethodInfo_Name (MethodInfo_t *minfo) const
 
virtual const char * MethodInfo_TypeName (MethodInfo_t *minfo) const
 
virtual std::string MethodInfo_TypeNormalizedName (MethodInfo_t *minfo) const
 
virtual const char * MethodInfo_Title (MethodInfo_t *minfo) const
 
virtual void MethodArgInfo_Delete (MethodArgInfo_t *marginfo) const
 
virtual MethodArgInfo_t * MethodArgInfo_Factory () const
 
virtual MethodArgInfo_t * MethodArgInfo_Factory (MethodInfo_t *minfo) const
 
virtual MethodArgInfo_t * MethodArgInfo_FactoryCopy (MethodArgInfo_t *marginfo) const
 
virtual bool MethodArgInfo_IsValid (MethodArgInfo_t *marginfo) const
 
virtual int MethodArgInfo_Next (MethodArgInfo_t *marginfo) const
 
virtual Long_t MethodArgInfo_Property (MethodArgInfo_t *marginfo) const
 
virtual const char * MethodArgInfo_DefaultValue (MethodArgInfo_t *marginfo) const
 
virtual const char * MethodArgInfo_Name (MethodArgInfo_t *marginfo) const
 
virtual const char * MethodArgInfo_TypeName (MethodArgInfo_t *marginfo) const
 
virtual std::string MethodArgInfo_TypeNormalizedName (MethodArgInfo_t *marginfo) const
 
virtual void TypeInfo_Delete (TypeInfo_t *tinfo) const
 
virtual TypeInfo_t * TypeInfo_Factory () const
 
virtual TypeInfo_t * TypeInfo_Factory (const char *name) const
 
virtual TypeInfo_t * TypeInfo_FactoryCopy (TypeInfo_t *) const
 
virtual void TypeInfo_Init (TypeInfo_t *tinfo, const char *funcname) const
 
virtual bool TypeInfo_IsValid (TypeInfo_t *tinfo) const
 
virtual const char * TypeInfo_Name (TypeInfo_t *) const
 
virtual Long_t TypeInfo_Property (TypeInfo_t *tinfo) const
 
virtual int TypeInfo_RefType (TypeInfo_t *) const
 
virtual int TypeInfo_Size (TypeInfo_t *tinfo) const
 
virtual const char * TypeInfo_TrueName (TypeInfo_t *tinfo) const
 
virtual DeclId_t GetDeclId (TypedefInfo_t *info) const
 Return a unique identifier of the declaration represented by the TypedefInfo. More...
 
virtual void TypedefInfo_Delete (TypedefInfo_t *tinfo) const
 
virtual TypedefInfo_t * TypedefInfo_Factory () const
 
virtual TypedefInfo_t * TypedefInfo_Factory (const char *name) const
 
virtual TypedefInfo_t * TypedefInfo_FactoryCopy (TypedefInfo_t *tinfo) const
 
virtual void TypedefInfo_Init (TypedefInfo_t *tinfo, const char *name) const
 
virtual bool TypedefInfo_IsValid (TypedefInfo_t *tinfo) const
 
virtual int TypedefInfo_Next (TypedefInfo_t *tinfo) const
 
virtual Long_t TypedefInfo_Property (TypedefInfo_t *tinfo) const
 
virtual int TypedefInfo_Size (TypedefInfo_t *tinfo) const
 
virtual const char * TypedefInfo_TrueName (TypedefInfo_t *tinfo) const
 
virtual const char * TypedefInfo_Name (TypedefInfo_t *tinfo) const
 
virtual const char * TypedefInfo_Title (TypedefInfo_t *tinfo) const
 
std::set< TClass * > & GetModTClasses ()
 
void HandleNewDecl (const void *DV, bool isDeserialized, std::set< TClass *> &modifiedClasses)
 
void UpdateListsOnCommitted (const cling::Transaction &T)
 
void UpdateListsOnUnloaded (const cling::Transaction &T)
 
void TransactionRollback (const cling::Transaction &T)
 
void LibraryLoaded (const void *dyLibHandle, const char *canonicalName)
 
void LibraryUnloaded (const void *dyLibHandle, const char *canonicalName)
 
- Public Member Functions inherited from TInterpreter
 TInterpreter ()
 
 TInterpreter (const char *name, const char *title="Generic Interpreter")
 TInterpreter ctor only called by derived classes. More...
 
virtual ~TInterpreter ()
 
void CallFunc_SetArg (CallFunc_t *func, Char_t param) const
 
void CallFunc_SetArg (CallFunc_t *func, Short_t param) const
 
void CallFunc_SetArg (CallFunc_t *func, Int_t param) const
 
void CallFunc_SetArg (CallFunc_t *func, UChar_t param) const
 
void CallFunc_SetArg (CallFunc_t *func, UShort_t param) const
 
void CallFunc_SetArg (CallFunc_t *func, UInt_t param) const
 
template<typename T >
void CallFunc_SetArgRef (CallFunc_t *func, T &param) const
 
void CallFunc_SetArg (CallFunc_t *func, void *arg)
 
template<typename T >
void CallFunc_SetArg (CallFunc_t *func, const T *arg)
 
void CallFunc_SetArgImpl (CallFunc_t *)
 
template<typename U >
void CallFunc_SetArgImpl (CallFunc_t *func, const U &head)
 
template<typename U , typename... T>
void CallFunc_SetArgImpl (CallFunc_t *func, const U &head, const T &... tail)
 
template<typename... T>
void CallFunc_SetArguments (CallFunc_t *func, const T &... args)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual ~TNamed ()
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void SetName (const char *name)
 Change (i.e. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Change (i.e. set) all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Change (i.e. set) the title of the TNamed. More...
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current pad. More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual Option_tGetOption () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
Bool_t IsOnHeap () const
 
Bool_t IsZombie () const
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
voidoperator new (size_t sz)
 
voidoperator new[] (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz, void *vp)
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
void ResetBit (UInt_t f)
 
Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
void InvertBit (UInt_t f)
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 

Static Public Member Functions

static void UpdateClassInfo (char *name, Long_t tagnum)
 No op: see TClingCallbacks. More...
 
static void UpdateClassInfoWork (const char *name)
 
static void UpdateAllCanvases ()
 Update all canvases at end the terminal input command. More...
 
- Static Public Member Functions inherited from TInterpreter
static TInterpreterInstance ()
 returns gInterpreter global More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 

Protected Member Functions

Bool_t SetSuspendAutoParsing (Bool_t value)
 Suspend the Autoparsing of headers. More...
 
- Protected Member Functions inherited from TObject
void MakeZombie ()
 
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 

Private Types

typedef voidSpecialObjectLookupCtx_t
 
typedef std::unordered_map< std::string, TObject * > SpecialObjectMap_t
 

Private Member Functions

DeclId_t GetDeclId (const llvm::GlobalValue *gv) const
 Return pointer to cling DeclId for a global value. More...
 
UInt_t AutoParseImplRecurse (const char *cls, bool topLevel)
 Helper routine for TCling::AutoParse implementing the actual call to the parser and looping over template parameters (if any) and when they don't have a registered header to autoparse, recurse over their template parameters. More...
 
 TCling ()
 
 TCling (const TCling &)
 
TClingoperator= (const TCling &)
 
void Execute (TMethod *, TObjArray *, int *=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
void UpdateListOfLoadedSharedLibraries ()
 
void RegisterLoadedSharedLibrary (const char *name)
 Register a new shared library name with the interpreter; add it to fSharedLibs. More...
 
void AddFriendToClass (clang::FunctionDecl *, clang::CXXRecordDecl *) const
 Inject function as a friend into klass. More...
 
bool LoadPCM (TString pcmFileName, const char **headers, void(*triggerFunc)()) const
 Tries to load a PCM; returns true on success. More...
 
void InitRootmapFile (const char *name)
 Create a resource table and read the (possibly) three resource files, i.e $ROOTSYS/etc/system<name> (or ROOTETCDIR/system<name>), $HOME/<name> and More...
 
int ReadRootmapFile (const char *rootmapfile, TUniqueString *uniqueString=nullptr)
 Read and parse a rootmapfile in its new format, and return 0 in case of success, -1 if the file has already been read, and -3 in case its format is the old one (e.g. More...
 
Bool_t HandleNewTransaction (const cling::Transaction &T)
 Helper function to increase the internal Cling count of transactions that change the AST. More...
 
void UnloadClassMembers (TClass *cl, const clang::DeclContext *DC)
 Helper function to go through the members of a class or namespace and unload them. More...
 

Private Attributes

Int_t fMore
 
Int_t fExitCode
 
char fPrompt [64]
 
TString fSharedLibs
 
Int_t fGlobalsListSerial
 
TString fIncludePath
 
TString fRootmapLoadPath
 
TEnvfMapfile
 
std::map< size_t, std::vector< const char * > > fClassesHeadersMap
 
std::map< const cling::Transaction *, size_t > fTransactionHeadersMap
 
std::set< size_t > fLookedUpClasses
 
std::set< size_t > fPayloads
 
std::set< const char * > fParsedPayloadsAddresses
 
std::hash< std::string > fStringHashFunction
 
std::unordered_set< const clang::NamespaceDecl * > fNSFromRootmaps
 
TObjArrayfRootmapFiles
 
Bool_t fLockProcessLine
 
Bool_t fAllowLibLoad
 
cling::Interpreter * fInterpreter
 
cling::MetaProcessor * fMetaProcessor
 
std::vector< cling::Value > * fTemporaries
 
ROOT::TMetaUtils::TNormalizedCtxtfNormalizedCtxt
 
ROOT::TMetaUtils::TClingLookupHelperfLookupHelper
 
voidfPrevLoadedDynLibInfo
 
std::vector< void * > fRegisterModuleDyLibs
 
TClingCallbacksfClingCallbacks
 
std::set< TClass * > fModTClasses
 
std::vector< std::pair< TClass *, DictFuncPtr_t > > fClassesToUpdate
 
voidfAutoLoadCallBack
 
ULong64_t fTransactionCount
 
std::vector< const char * > fCurExecutingMacros
 
std::map< SpecialObjectLookupCtx_t, SpecialObjectMap_tfSpecialObjectMaps
 
Bool_t fHeaderParsingOnDemand
 
Bool_t fIsAutoParsingSuspended
 

Static Private Attributes

static voidfgSetOfSpecials = 0
 

Additional Inherited Members

- Public Types inherited from TInterpreter
enum  EErrorCode {
  kNoError = 0, kRecoverable = 1, kDangerous = 2, kFatal = 3,
  kProcessing = 99
}
 
enum  EReturnType {
  EReturnType::kLong, EReturnType::kDouble, EReturnType::kString, EReturnType::kOther,
  EReturnType::kNoReturnType
}
 
typedef int(* AutoLoadCallBack_t) (const char *)
 
typedef std::vector< std::pair< std::string, int > > FwdDeclArgsToKeepCollection_t
 
typedef TDictionary::DeclId_t DeclId_t
 
- Public Types inherited from TObject
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4),
  kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
enum  { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff }
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 

#include </builddir/build/BUILD/root-6.06.08/core/meta/src/TCling.h>

+ Inheritance diagram for TCling:
+ Collaboration diagram for TCling:

Member Typedef Documentation

§ SpecialObjectLookupCtx_t

Definition at line 141 of file TCling.h.

§ SpecialObjectMap_t

typedef std::unordered_map<std::string, TObject*> TCling::SpecialObjectMap_t
private

Definition at line 142 of file TCling.h.

Constructor & Destructor Documentation

§ ~TCling()

TCling::~TCling ( )
virtual

Destroy the interpreter interface.

Definition at line 1185 of file TCling.cxx.

§ TCling() [1/3]

TCling::TCling ( const char *  name,
const char *  title 
)

Initialize the cling interpreter interface.

Definition at line 1032 of file TCling.cxx.

§ TCling() [2/3]

TCling::TCling ( )
private

§ TCling() [3/3]

TCling::TCling ( const TCling )
private

Member Function Documentation

§ AddFriendToClass()

void TCling::AddFriendToClass ( clang::FunctionDecl *  function,
clang::CXXRecordDecl *  klass 
) const
private

Inject function as a friend into klass.

With function being f in void f() {new N::PrivKlass(); } this enables I/O of non-public classes.

Definition at line 6367 of file TCling.cxx.

§ AddIncludePath()

void TCling::AddIncludePath ( const char *  path)
virtual

Add the given path to the list of directories in which the interpreter looks for include files.

Only one path item can be specified at a time, i.e. "path1:path2" is not supported.

Implements TInterpreter.

Definition at line 2040 of file TCling.cxx.

Referenced by RegisterModule(), and TCling().

§ AutoLoad() [1/2]

Int_t TCling::AutoLoad ( const char *  cls,
Bool_t  knowDictNotLoaded = kFALSE 
)
virtual

Load library containing the specified class.

Returns 0 in case of error and 1 in case if success.

Implements TInterpreter.

Definition at line 5021 of file TCling.cxx.

Referenced by AutoLoad(), and AutoParse().

§ AutoLoad() [2/2]

Int_t TCling::AutoLoad ( const std::type_info &  typeinfo,
Bool_t  knowDictNotLoaded = kFALSE 
)
virtual

Load library containing the specified class.

Returns 0 in case of error and 1 in case if success.

Implements TInterpreter.

Definition at line 4989 of file TCling.cxx.

§ AutoParse()

Int_t TCling::AutoParse ( const char *  cls)
virtual

Parse the headers relative to the class Returns 1 in case of success, 0 in case of failure.

Implements TInterpreter.

Definition at line 5302 of file TCling.cxx.

§ AutoParseImplRecurse()

UInt_t TCling::AutoParseImplRecurse ( const char *  cls,
bool  topLevel 
)
private

Helper routine for TCling::AutoParse implementing the actual call to the parser and looping over template parameters (if any) and when they don't have a registered header to autoparse, recurse over their template parameters.

Returns the number of header parsed.

Definition at line 5174 of file TCling.cxx.

Referenced by AutoParse().

§ BaseClassInfo_ClassInfo()

ClassInfo_t * TCling::BaseClassInfo_ClassInfo ( BaseClassInfo_t *  bcinfo) const
virtual

Implements TInterpreter.

Definition at line 7079 of file TCling.cxx.

§ BaseClassInfo_Delete()

void TCling::BaseClassInfo_Delete ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7007 of file TCling.cxx.

§ BaseClassInfo_Factory() [1/2]

BaseClassInfo_t * TCling::BaseClassInfo_Factory ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 7014 of file TCling.cxx.

§ BaseClassInfo_Factory() [2/2]

BaseClassInfo_t * TCling::BaseClassInfo_Factory ( ClassInfo_t *  derived,
ClassInfo_t *  base 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7023 of file TCling.cxx.

§ BaseClassInfo_FullName()

const char * TCling::BaseClassInfo_FullName ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7095 of file TCling.cxx.

§ BaseClassInfo_Name()

const char * TCling::BaseClassInfo_Name ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7105 of file TCling.cxx.

§ BaseClassInfo_Next() [1/2]

int TCling::BaseClassInfo_Next ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7034 of file TCling.cxx.

§ BaseClassInfo_Next() [2/2]

int TCling::BaseClassInfo_Next ( BaseClassInfo_t *  bcinfo,
int  onlyDirect 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7042 of file TCling.cxx.

§ BaseClassInfo_Offset()

Long_t TCling::BaseClassInfo_Offset ( BaseClassInfo_t *  toBaseClassInfo,
void address,
bool  isDerivedObject 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7050 of file TCling.cxx.

§ BaseClassInfo_Property()

Long_t TCling::BaseClassInfo_Property ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7071 of file TCling.cxx.

§ BaseClassInfo_Tagnum()

Long_t TCling::BaseClassInfo_Tagnum ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7087 of file TCling.cxx.

§ BaseClassInfo_TmpltName()

const char * TCling::BaseClassInfo_TmpltName ( BaseClassInfo_t *  bcinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7113 of file TCling.cxx.

§ Calc()

Long_t TCling::Calc ( const char *  line,
EErrorCode error = 0 
)
virtual

Directly execute an executable statement (e.g.

"func()", "3+5", etc. however not declarations, like "Int_t x;").

Implements TInterpreter.

Definition at line 2817 of file TCling.cxx.

§ CallFunc_Delete()

void TCling::CallFunc_Delete ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6443 of file TCling.cxx.

§ CallFunc_Exec() [1/2]

void TCling::CallFunc_Exec ( CallFunc_t *  func,
void address 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6450 of file TCling.cxx.

§ CallFunc_Exec() [2/2]

void TCling::CallFunc_Exec ( CallFunc_t *  func,
void address,
TInterpreterValue val 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6458 of file TCling.cxx.

§ CallFunc_ExecDouble()

Double_t TCling::CallFunc_ExecDouble ( CallFunc_t *  func,
void address 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6501 of file TCling.cxx.

§ CallFunc_ExecInt()

Long_t TCling::CallFunc_ExecInt ( CallFunc_t *  func,
void address 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6485 of file TCling.cxx.

§ CallFunc_ExecInt64()

Long64_t TCling::CallFunc_ExecInt64 ( CallFunc_t *  func,
void address 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6493 of file TCling.cxx.

§ CallFunc_ExecWithArgsAndReturn()

void TCling::CallFunc_ExecWithArgsAndReturn ( CallFunc_t *  func,
void address,
const void args[] = 0,
int  nargs = 0,
void ret = 0 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6474 of file TCling.cxx.

§ CallFunc_ExecWithReturn()

void TCling::CallFunc_ExecWithReturn ( CallFunc_t *  func,
void address,
void ret 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6466 of file TCling.cxx.

§ CallFunc_Factory()

CallFunc_t * TCling::CallFunc_Factory ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 6509 of file TCling.cxx.

§ CallFunc_FactoryCopy()

CallFunc_t * TCling::CallFunc_FactoryCopy ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6517 of file TCling.cxx.

§ CallFunc_FactoryMethod()

MethodInfo_t * TCling::CallFunc_FactoryMethod ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6524 of file TCling.cxx.

§ CallFunc_IFacePtr()

TInterpreter::CallFuncIFacePtr_t TCling::CallFunc_IFacePtr ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6558 of file TCling.cxx.

§ CallFunc_IgnoreExtraArgs()

void TCling::CallFunc_IgnoreExtraArgs ( CallFunc_t *  func,
bool  ignore 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6532 of file TCling.cxx.

§ CallFunc_Init()

void TCling::CallFunc_Init ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6540 of file TCling.cxx.

§ CallFunc_IsValid()

bool TCling::CallFunc_IsValid ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6549 of file TCling.cxx.

§ CallFunc_ResetArg()

void TCling::CallFunc_ResetArg ( CallFunc_t *  func) const
virtual

Reimplemented from TInterpreter.

Definition at line 6566 of file TCling.cxx.

§ CallFunc_SetArg() [1/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
Long_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6574 of file TCling.cxx.

§ CallFunc_SetArg() [2/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
ULong_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6582 of file TCling.cxx.

§ CallFunc_SetArg() [3/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
Float_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6590 of file TCling.cxx.

§ CallFunc_SetArg() [4/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
Double_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6598 of file TCling.cxx.

§ CallFunc_SetArg() [5/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
Long64_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6606 of file TCling.cxx.

§ CallFunc_SetArg() [6/6]

void TCling::CallFunc_SetArg ( CallFunc_t *  func,
ULong64_t  param 
) const
virtual

Implements TInterpreter.

Definition at line 6614 of file TCling.cxx.

§ CallFunc_SetArgArray()

void TCling::CallFunc_SetArgArray ( CallFunc_t *  func,
Long_t paramArr,
Int_t  nparam 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6622 of file TCling.cxx.

§ CallFunc_SetArgs()

void TCling::CallFunc_SetArgs ( CallFunc_t *  func,
const char *  param 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6630 of file TCling.cxx.

§ CallFunc_SetFunc() [1/3]

void TCling::CallFunc_SetFunc ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const char *  params,
Long_t Offset 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6638 of file TCling.cxx.

§ CallFunc_SetFunc() [2/3]

void TCling::CallFunc_SetFunc ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const char *  params,
bool  objectIsConst,
Long_t Offset 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6647 of file TCling.cxx.

§ CallFunc_SetFunc() [3/3]

void TCling::CallFunc_SetFunc ( CallFunc_t *  func,
MethodInfo_t *  info 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6655 of file TCling.cxx.

§ CallFunc_SetFuncProto() [1/4]

void TCling::CallFunc_SetFuncProto ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const char *  proto,
Long_t Offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6665 of file TCling.cxx.

§ CallFunc_SetFuncProto() [2/4]

void TCling::CallFunc_SetFuncProto ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const char *  proto,
bool  objectIsConst,
Long_t Offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6675 of file TCling.cxx.

§ CallFunc_SetFuncProto() [3/4]

void TCling::CallFunc_SetFuncProto ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const std::vector< TypeInfo_t *> &  proto,
Long_t Offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Interface to cling function.

Implements TInterpreter.

Definition at line 6685 of file TCling.cxx.

§ CallFunc_SetFuncProto() [4/4]

void TCling::CallFunc_SetFuncProto ( CallFunc_t *  func,
ClassInfo_t *  info,
const char *  method,
const std::vector< TypeInfo_t *> &  proto,
bool  objectIsConst,
Long_t Offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Interface to cling function.

Implements TInterpreter.

Definition at line 6700 of file TCling.cxx.

§ CheckClassInfo()

Bool_t TCling::CheckClassInfo ( const char *  name,
Bool_t  autoload,
Bool_t  isClassOrNamespaceOnly = kFALSE 
)
virtual

Checks if an entity with the specified name is defined in Cling.

Returns kFALSE if the entity is not defined. By default, structs, namespaces, classes, enums and unions are looked for. If the flag isClassOrNamespaceOnly is true, classes, structs and namespaces only are considered. I.e. if the name is an enum or a union, the returned value is false.

In the case where the class is not loaded and belongs to a namespace or is nested, looking for the full class name is outputting a lots of (expected) error messages. Currently the only way to avoid this is to specifically check that each level of nesting is already loaded. In case of templates the idea is that everything between the outer '<' and '>' has to be skipped, e.g.: aap<pippo<noot>::klaas>::a_class

Implements TInterpreter.

Definition at line 3214 of file TCling.cxx.

§ CheckClassTemplate()

Bool_t TCling::CheckClassTemplate ( const char *  name)
virtual

Return true if there is a class template by the given name ...

Implements TInterpreter.

Definition at line 3337 of file TCling.cxx.

§ ClassInfo_ClassProperty()

Long_t TCling::ClassInfo_ClassProperty ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6743 of file TCling.cxx.

§ ClassInfo_Contains()

Bool_t TCling::ClassInfo_Contains ( ClassInfo_t *  info,
DeclId_t  declid 
) const
virtual

Return true if the entity pointed to by 'declid' is declared in the context described by 'info'.

If info is null, look into the global scope (translation unit scope).

Implements TInterpreter.

Definition at line 6722 of file TCling.cxx.

§ ClassInfo_Delete() [1/2]

void TCling::ClassInfo_Delete ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6751 of file TCling.cxx.

§ ClassInfo_Delete() [2/2]

void TCling::ClassInfo_Delete ( ClassInfo_t *  info,
void arena 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6758 of file TCling.cxx.

§ ClassInfo_DeleteArray()

void TCling::ClassInfo_DeleteArray ( ClassInfo_t *  info,
void arena,
bool  dtorOnly 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6766 of file TCling.cxx.

§ ClassInfo_Destruct()

void TCling::ClassInfo_Destruct ( ClassInfo_t *  info,
void arena 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6774 of file TCling.cxx.

§ ClassInfo_Factory() [1/3]

ClassInfo_t * TCling::ClassInfo_Factory ( Bool_t  all = kTRUE) const
virtual

Implements TInterpreter.

Definition at line 6782 of file TCling.cxx.

§ ClassInfo_Factory() [2/3]

ClassInfo_t * TCling::ClassInfo_Factory ( ClassInfo_t *  cl) const
virtual

Implements TInterpreter.

Definition at line 6790 of file TCling.cxx.

§ ClassInfo_Factory() [3/3]

ClassInfo_t * TCling::ClassInfo_Factory ( const char *  name) const
virtual

Implements TInterpreter.

Definition at line 6797 of file TCling.cxx.

§ ClassInfo_FileName()

const char * TCling::ClassInfo_FileName ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6958 of file TCling.cxx.

§ ClassInfo_FullName()

const char * TCling::ClassInfo_FullName ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6966 of file TCling.cxx.

§ ClassInfo_GetBaseOffset()

Long_t TCling::ClassInfo_GetBaseOffset ( ClassInfo_t *  fromDerived,
ClassInfo_t *  toBase,
void address,
bool  isDerivedObject 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7058 of file TCling.cxx.

§ ClassInfo_GetMethodNArg()

int TCling::ClassInfo_GetMethodNArg ( ClassInfo_t *  info,
const char *  method,
const char *  proto,
Bool_t  objectIsConst = false,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6805 of file TCling.cxx.

§ ClassInfo_HasDefaultConstructor()

bool TCling::ClassInfo_HasDefaultConstructor ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6813 of file TCling.cxx.

§ ClassInfo_HasMethod()

bool TCling::ClassInfo_HasMethod ( ClassInfo_t *  info,
const char *  name 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6821 of file TCling.cxx.

§ ClassInfo_Init() [1/2]

void TCling::ClassInfo_Init ( ClassInfo_t *  info,
const char *  funcname 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6829 of file TCling.cxx.

§ ClassInfo_Init() [2/2]

void TCling::ClassInfo_Init ( ClassInfo_t *  info,
int  tagnum 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6838 of file TCling.cxx.

§ ClassInfo_IsBase()

bool TCling::ClassInfo_IsBase ( ClassInfo_t *  info,
const char *  name 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6847 of file TCling.cxx.

§ ClassInfo_IsEnum()

bool TCling::ClassInfo_IsEnum ( const char *  name) const
virtual

Reimplemented from TInterpreter.

Definition at line 6855 of file TCling.cxx.

§ ClassInfo_IsLoaded()

bool TCling::ClassInfo_IsLoaded ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6862 of file TCling.cxx.

§ ClassInfo_IsValid()

bool TCling::ClassInfo_IsValid ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6870 of file TCling.cxx.

§ ClassInfo_IsValidMethod() [1/2]

bool TCling::ClassInfo_IsValidMethod ( ClassInfo_t *  info,
const char *  method,
const char *  proto,
Long_t offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6878 of file TCling.cxx.

§ ClassInfo_IsValidMethod() [2/2]

bool TCling::ClassInfo_IsValidMethod ( ClassInfo_t *  info,
const char *  method,
const char *  proto,
Bool_t  objectIsConst,
Long_t offset,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6886 of file TCling.cxx.

§ ClassInfo_Name()

const char * TCling::ClassInfo_Name ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6976 of file TCling.cxx.

§ ClassInfo_New() [1/4]

void * TCling::ClassInfo_New ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6902 of file TCling.cxx.

§ ClassInfo_New() [2/4]

void * TCling::ClassInfo_New ( ClassInfo_t *  info,
int  n 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6910 of file TCling.cxx.

§ ClassInfo_New() [3/4]

void * TCling::ClassInfo_New ( ClassInfo_t *  info,
int  n,
void arena 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6918 of file TCling.cxx.

§ ClassInfo_New() [4/4]

void * TCling::ClassInfo_New ( ClassInfo_t *  info,
void arena 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6926 of file TCling.cxx.

§ ClassInfo_Next()

int TCling::ClassInfo_Next ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6894 of file TCling.cxx.

§ ClassInfo_Property()

Long_t TCling::ClassInfo_Property ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6934 of file TCling.cxx.

§ ClassInfo_Size()

int TCling::ClassInfo_Size ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6942 of file TCling.cxx.

§ ClassInfo_Tagnum()

Long_t TCling::ClassInfo_Tagnum ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6950 of file TCling.cxx.

§ ClassInfo_Title()

const char * TCling::ClassInfo_Title ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6984 of file TCling.cxx.

§ ClassInfo_TmpltName()

const char * TCling::ClassInfo_TmpltName ( ClassInfo_t *  info) const
virtual

Reimplemented from TInterpreter.

Definition at line 6992 of file TCling.cxx.

§ ClearFileBusy()

void TCling::ClearFileBusy ( )
virtual

Reset the interpreter internal state in case a previous action was not correctly terminated.

Implements TInterpreter.

Definition at line 2420 of file TCling.cxx.

§ ClearStack()

void TCling::ClearStack ( )
virtual

Delete existing temporary values.

Implements TInterpreter.

Definition at line 2428 of file TCling.cxx.

§ CreateEnum()

TEnum * TCling::CreateEnum ( void VD,
TClass cl 
) const
virtual

Implements TInterpreter.

Definition at line 421 of file TCling.cxx.

§ CreateListOfBaseClasses()

void TCling::CreateListOfBaseClasses ( TClass cl) const
virtual

Create list of pointers to base class(es) for TClass cl.

Implements TInterpreter.

Definition at line 3357 of file TCling.cxx.

§ CreateListOfDataMembers()

void TCling::CreateListOfDataMembers ( TClass cl) const
virtual

Create list of pointers to data members for TClass cl.

This is now a nop. The creation and updating is handled in TListOfDataMembers.

Implements TInterpreter.

Definition at line 3463 of file TCling.cxx.

§ CreateListOfMethodArgs()

void TCling::CreateListOfMethodArgs ( TFunction m) const
virtual

Create list of pointers to method arguments for TMethod m.

Implements TInterpreter.

Definition at line 3497 of file TCling.cxx.

§ CreateListOfMethods()

void TCling::CreateListOfMethods ( TClass cl) const
virtual

Create list of pointers to methods for TClass cl.

This is now a nop. The creation and updating is handled in TListOfFunctions.

Implements TInterpreter.

Definition at line 3472 of file TCling.cxx.

§ CreateTemporary()

TInterpreterValue * TCling::CreateTemporary ( )
virtual

The created temporary must be deleted by the caller.

Reimplemented from TInterpreter.

Definition at line 6277 of file TCling.cxx.

§ DataMemberInfo_ArrayDim()

int TCling::DataMemberInfo_ArrayDim ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7126 of file TCling.cxx.

§ DataMemberInfo_Delete()

void TCling::DataMemberInfo_Delete ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7134 of file TCling.cxx.

§ DataMemberInfo_Factory() [1/2]

DataMemberInfo_t * TCling::DataMemberInfo_Factory ( ClassInfo_t *  clinfo = 0) const
virtual

Reimplemented from TInterpreter.

Definition at line 7141 of file TCling.cxx.

§ DataMemberInfo_Factory() [2/2]

DataMemberInfo_t * TCling::DataMemberInfo_Factory ( DeclId_t  declid,
ClassInfo_t *  clinfo 
) const
virtual

Implements TInterpreter.

Definition at line 7150 of file TCling.cxx.

§ DataMemberInfo_FactoryCopy()

DataMemberInfo_t * TCling::DataMemberInfo_FactoryCopy ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7160 of file TCling.cxx.

§ DataMemberInfo_IsValid()

bool TCling::DataMemberInfo_IsValid ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7168 of file TCling.cxx.

§ DataMemberInfo_MaxIndex()

int TCling::DataMemberInfo_MaxIndex ( DataMemberInfo_t *  dminfo,
Int_t  dim 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7176 of file TCling.cxx.

§ DataMemberInfo_Name()

const char * TCling::DataMemberInfo_Name ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7240 of file TCling.cxx.

§ DataMemberInfo_Next()

int TCling::DataMemberInfo_Next ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7184 of file TCling.cxx.

§ DataMemberInfo_Offset()

Long_t TCling::DataMemberInfo_Offset ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7192 of file TCling.cxx.

§ DataMemberInfo_Property()

Long_t TCling::DataMemberInfo_Property ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7200 of file TCling.cxx.

§ DataMemberInfo_Title()

const char * TCling::DataMemberInfo_Title ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7248 of file TCling.cxx.

§ DataMemberInfo_TypeName()

const char * TCling::DataMemberInfo_TypeName ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7224 of file TCling.cxx.

§ DataMemberInfo_TypeProperty()

Long_t TCling::DataMemberInfo_TypeProperty ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7208 of file TCling.cxx.

§ DataMemberInfo_TypeSize()

int TCling::DataMemberInfo_TypeSize ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7216 of file TCling.cxx.

§ DataMemberInfo_TypeTrueName()

const char * TCling::DataMemberInfo_TypeTrueName ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7232 of file TCling.cxx.

§ DataMemberInfo_ValidArrayIndex()

const char * TCling::DataMemberInfo_ValidArrayIndex ( DataMemberInfo_t *  dminfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7256 of file TCling.cxx.

§ Declare()

bool TCling::Declare ( const char *  code)
virtual

Declare code to the interpreter, without any of the interpreter actions that could trigger a re-interpretation of the code.

I.e. make cling behave like a compiler: no dynamic lookup, no input wrapping for subsequent execution, no automatic provision of declarations but just a plain #include. Returns true on success, false on failure.

Implements TInterpreter.

Definition at line 2441 of file TCling.cxx.

§ DeleteGlobal()

Int_t TCling::DeleteGlobal ( void obj)
virtual

Delete obj from Cling symbol table so it cannot be accessed anymore.

Returns 1 in case of success and 0 in case object was not in table.

Implements TInterpreter.

Definition at line 2998 of file TCling.cxx.

Referenced by RecursiveRemove().

§ DeleteVariable()

Int_t TCling::DeleteVariable ( const char *  name)
virtual

Undeclare obj called name.

Returns 1 in case of success, 0 for failure.

Implements TInterpreter.

Definition at line 3013 of file TCling.cxx.

§ DisplayClass()

int TCling::DisplayClass ( FILE *  fout,
const char *  name,
int  base,
int  start 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 6017 of file TCling.cxx.

§ DisplayIncludePath()

int TCling::DisplayIncludePath ( FILE *  fout) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6026 of file TCling.cxx.

§ EnableAutoLoading()

void TCling::EnableAutoLoading ( )
virtual

Enable the automatic loading of shared libraries when a class is used that is stored in a not yet loaded library.

Uses the information stored in the class/library map (typically $ROOTSYS/etc/system.rootmap).

Implements TInterpreter.

Definition at line 2467 of file TCling.cxx.

§ EndOfLineAction()

void TCling::EndOfLineAction ( )
virtual

It calls a "fantom" method to synchronize user keyboard input and ROOT prompt line.

Implements TInterpreter.

Definition at line 2479 of file TCling.cxx.

§ Execute() [1/5]

void TCling::Execute ( const char *  function,
const char *  params,
int *  error = 0 
)
virtual

Execute a global function with arguments params.

FIXME: The cint-based version of this code does not check if the SetFunc() call works, and does not do any real checking for errors from the Exec() call. It did fetch the most recent cint security error and return that in error, but this does not really translate well to cling/clang. We should enhance these interfaces so that we can report compilation and runtime errors properly.

Implements TInterpreter.

Definition at line 4138 of file TCling.cxx.

Referenced by Execute().

§ Execute() [2/5]

void TCling::Execute ( TObject obj,
TClass cl,
const char *  method,
const char *  params,
int *  error = 0 
)
virtual

Implements TInterpreter.

Definition at line 4182 of file TCling.cxx.

§ Execute() [3/5]

void TCling::Execute ( TObject obj,
TClass cl,
const char *  method,
const char *  params,
Bool_t  objectIsConst,
int *  error = 0 
)

Execute a method from class cl with arguments params.

FIXME: The cint-based version of this code does not check if the SetFunc() call works, and does not do any real checking for errors from the Exec() call. It did fetch the most recent cint security error and return that in error, but this does not really translate well to cling/clang. We should enhance these interfaces so that we can report compilation and runtime errors properly.

Definition at line 4162 of file TCling.cxx.

§ Execute() [4/5]

void TCling::Execute ( TObject obj,
TClass cl,
TMethod method,
TObjArray params,
int *  error = 0 
)
virtual

Execute a method from class cl with the arguments in array params (params[0] ...

params[n] = array of TObjString parameters). Convert the TObjArray array of TObjString parameters to a character string of comma separated parameters. The parameters of type 'char' are enclosed in double quotes and all internal quotes are escaped.

Implements TInterpreter.

Definition at line 4196 of file TCling.cxx.

§ Execute() [5/5]

void TCling::Execute ( TMethod method,
TObjArray params,
int *  error = 0 
)
inlineprivatevirtual

Execute method on this object with parameters stored in the TObjArray.

The TObjArray should contain an argv vector like:

argv[0] ... argv[n] = the list of TObjString parameters

Implements TInterpreter.

Definition at line 533 of file TCling.h.

§ ExecuteMacro()

Long_t TCling::ExecuteMacro ( const char *  filename,
EErrorCode error = 0 
)
virtual

Execute a cling macro.

Implements TInterpreter.

Definition at line 4308 of file TCling.cxx.

§ ExecuteWithArgsAndReturn()

void TCling::ExecuteWithArgsAndReturn ( TMethod method,
void address,
const void args[] = 0,
int  nargs = 0,
void ret = 0 
) const
virtual

Implements TInterpreter.

Definition at line 4290 of file TCling.cxx.

§ FindSym()

void * TCling::FindSym ( const char *  entry) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6055 of file TCling.cxx.

§ FuncTempInfo_Delete()

void TCling::FuncTempInfo_Delete ( FuncTempInfo_t *  ) const
virtual

Delete the FuncTempInfo_t.

Implements TInterpreter.

Definition at line 7333 of file TCling.cxx.

§ FuncTempInfo_Factory()

FuncTempInfo_t * TCling::FuncTempInfo_Factory ( DeclId_t  declid) const
virtual

Construct a FuncTempInfo_t.

Implements TInterpreter.

Definition at line 7342 of file TCling.cxx.

§ FuncTempInfo_FactoryCopy()

FuncTempInfo_t * TCling::FuncTempInfo_FactoryCopy ( FuncTempInfo_t *  ft_info) const
virtual

Construct a FuncTempInfo_t.

Implements TInterpreter.

Definition at line 7353 of file TCling.cxx.

§ FuncTempInfo_IsValid()

Bool_t TCling::FuncTempInfo_IsValid ( FuncTempInfo_t *  t_info) const
virtual

Check validity of a FuncTempInfo_t.

Implements TInterpreter.

Definition at line 7364 of file TCling.cxx.

§ FuncTempInfo_Name()

void TCling::FuncTempInfo_Name ( FuncTempInfo_t *  ft_info,
TString name 
) const
virtual

Return the name of this function template.

Implements TInterpreter.

Definition at line 7456 of file TCling.cxx.

§ FuncTempInfo_Property()

Long_t TCling::FuncTempInfo_Property ( FuncTempInfo_t *  ft_info) const
virtual

Return the property of the function template.

Implements TInterpreter.

Definition at line 7397 of file TCling.cxx.

§ FuncTempInfo_TemplateMinReqArgs()

UInt_t TCling::FuncTempInfo_TemplateMinReqArgs ( FuncTempInfo_t *  ft_info) const
virtual

Return the number of required template arguments of the function template described by ft_info.

Implements TInterpreter.

Definition at line 7387 of file TCling.cxx.

§ FuncTempInfo_TemplateNargs()

UInt_t TCling::FuncTempInfo_TemplateNargs ( FuncTempInfo_t *  ft_info) const
virtual

Return the maximum number of template arguments of the function template described by ft_info.

Implements TInterpreter.

Definition at line 7376 of file TCling.cxx.

§ FuncTempInfo_Title()

void TCling::FuncTempInfo_Title ( FuncTempInfo_t *  ft_info,
TString name 
) const
virtual

Return the comments associates with this function template.

Implements TInterpreter.

Definition at line 7469 of file TCling.cxx.

§ GenerateDictionary()

Int_t TCling::GenerateDictionary ( const char *  classes,
const char *  includes = 0,
const char *  options = 0 
)
virtual

Generate the dictionary for the C++ classes listed in the first argument (in a semi-colon separated list).

'includes' contains a semi-colon separated list of file to #include in the dictionary. For example:

gInterpreter->GenerateDictionary("vector<vector<float> >;list<vector<float> >","list;vector");

or

gInterpreter->GenerateDictionary("myclass","myclass.h;myhelper.h");

Implements TInterpreter.

Definition at line 3691 of file TCling.cxx.

Referenced by GenerateTClass().

§ GenerateTClass() [1/2]

TClass * TCling::GenerateTClass ( const char *  classname,
Bool_t  emulation,
Bool_t  silent = kFALSE 
)
virtual

Generate a TClass for the given class.

Since the caller has already check the ClassInfo, let it give use the result (via the value of emulation) rather than recalculate it.

Implements TInterpreter.

Definition at line 3519 of file TCling.cxx.

§ GenerateTClass() [2/2]

TClass * TCling::GenerateTClass ( ClassInfo_t *  classinfo,
Bool_t  silent = kFALSE 
)
virtual

Generate a TClass for the given class.

Implements TInterpreter.

Definition at line 3633 of file TCling.cxx.

§ GenericError()

void TCling::GenericError ( const char *  error) const
virtual

Let the interpreter issue a generic error, and set its error state.

Reimplemented from TInterpreter.

Definition at line 6063 of file TCling.cxx.

§ GetAutoLoadCallBack()

void* TCling::GetAutoLoadCallBack ( ) const
inlinevirtual

Reimplemented from TInterpreter.

Definition at line 163 of file TCling.h.

§ GetClass()

TClass * TCling::GetClass ( const std::type_info &  typeinfo,
Bool_t  load 
) const
virtual

Demangle the name (from the typeinfo) and then request the class via the usual name based interface (TClass::GetClass).

Implements TInterpreter.

Definition at line 4975 of file TCling.cxx.

§ GetClassSharedLibs()

const char * TCling::GetClassSharedLibs ( const char *  cls)
virtual

Get the list of shared libraries containing the code for class cls.

The first library in the list is the one containing the class, the others are the libraries the first one depends on. Returns 0 in case the library is not found.

Implements TInterpreter.

Definition at line 5880 of file TCling.cxx.

Referenced by AutoLoad(), and LazyFunctionCreatorAutoload().

§ GetCurrentMacroName()

const char * TCling::GetCurrentMacroName ( ) const
virtual

Return the file name of the currently interpreted file, included or not.

Example to illustrate the difference between GetCurrentMacroName() and GetTopLevelMacroName():

void inclfile() {
std::cout << "In inclfile.C" << std::endl;
std::cout << " TCling::GetCurrentMacroName() returns " <<
std::cout << " TCling::GetTopLevelMacroName() returns " <<
}
void mymacro() {
std::cout << "In mymacro.C" << std::endl;
std::cout << " TCling::GetCurrentMacroName() returns " <<
std::cout << " TCling::GetTopLevelMacroName() returns " <<
std::cout << " Now calling inclfile..." << std::endl;
gInterpreter->ProcessLine(".x inclfile.C");;
}

Running mymacro.C will print:

root [0] .x mymacro.C

In mymacro.C

TCling::GetCurrentMacroName() returns ./mymacro.C
TCling::GetTopLevelMacroName() returns ./mymacro.C

Now calling inclfile... In inclfile.h

TCling::GetCurrentMacroName() returns inclfile.C
TCling::GetTopLevelMacroName() returns ./mymacro.C

Reimplemented from TInterpreter.

Definition at line 4368 of file TCling.cxx.

§ GetDataMember()

TInterpreter::DeclId_t TCling::GetDataMember ( ClassInfo_t *  opaque_cl,
const char *  name 
) const
virtual

Return pointer to cling Decl of global/static variable that is located at the address given by addr.

Implements TInterpreter.

Definition at line 3736 of file TCling.cxx.

§ GetDataMemberAtAddr()

TInterpreter::DeclId_t TCling::GetDataMemberAtAddr ( const void addr) const
virtual

Return pointer to cling DeclId for a data member with a given name.

Implements TInterpreter.

Definition at line 3881 of file TCling.cxx.

§ GetDataMemberWithValue()

TInterpreter::DeclId_t TCling::GetDataMemberWithValue ( const void ptrvalue) const
virtual

NOT IMPLEMENTED.

Implements TInterpreter.

Definition at line 3872 of file TCling.cxx.

§ GetDeclId() [1/7]

TInterpreter::DeclId_t TCling::GetDeclId ( const llvm::GlobalValue *  gv) const
private

Return pointer to cling DeclId for a global value.

Definition at line 3803 of file TCling.cxx.

Referenced by GenerateTClass(), and GetFunctionOverloads().

§ GetDeclId() [2/7]

TInterpreter::DeclId_t TCling::GetDeclId ( CallFunc_t *  info) const
virtual

Return a unique identifier of the declaration represented by the CallFunc.

Implements TInterpreter.

Definition at line 6388 of file TCling.cxx.

§ GetDeclId() [3/7]

TInterpreter::DeclId_t TCling::GetDeclId ( ClassInfo_t *  cinfo) const
virtual

Return a (almost) unique identifier of the declaration represented by the ClassInfo.

In ROOT, this identifier can point to more than one TClass when the underlying class is a template instance involving one of the opaque typedef.

Implements TInterpreter.

Definition at line 6400 of file TCling.cxx.

§ GetDeclId() [4/7]

TInterpreter::DeclId_t TCling::GetDeclId ( DataMemberInfo_t *  info) const
virtual

Return a unique identifier of the declaration represented by the MethodInfo.

Implements TInterpreter.

Definition at line 6410 of file TCling.cxx.

§ GetDeclId() [5/7]

TInterpreter::DeclId_t TCling::GetDeclId ( FuncTempInfo_t *  info) const
virtual

Return a unique identifier of the declaration represented by the FuncTempInfo.

Implements TInterpreter.

Definition at line 7325 of file TCling.cxx.

§ GetDeclId() [6/7]

TInterpreter::DeclId_t TCling::GetDeclId ( MethodInfo_t *  info) const
virtual

Return a unique identifier of the declaration represented by the MethodInfo.

Implements TInterpreter.

Definition at line 6420 of file TCling.cxx.

§ GetDeclId() [7/7]

TInterpreter::DeclId_t TCling::GetDeclId ( TypedefInfo_t *  info) const
virtual

Return a unique identifier of the declaration represented by the TypedefInfo.

Implements TInterpreter.

Definition at line 6430 of file TCling.cxx.

§ GetEnum()

TInterpreter::DeclId_t TCling::GetEnum ( TClass cl,
const char *  name 
) const
virtual

Return pointer to cling Decl of global/static variable that is located at the address given by addr.

Implements TInterpreter.

Definition at line 3767 of file TCling.cxx.

§ GetExecByteCode()

Long_t TCling::GetExecByteCode ( ) const
virtual

This routines used to return the address of the internal wrapper function (of the interpreter) that was used to call all the interpreted functions that were bytecode compiled (no longer interpreted line by line).

In Cling, there is no such wrapper function. In practice this routines was use to decipher whether the pointer returns by InterfaceMethod could be used to uniquely represent the function. In Cling if the function is in a useable state (its compiled version is available), this is always the case. See TClass::GetMethod.

Reimplemented from TInterpreter.

Definition at line 6085 of file TCling.cxx.

§ GetExitCode()

Int_t TCling::GetExitCode ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 177 of file TCling.h.

§ GetFunction()

TInterpreter::DeclId_t TCling::GetFunction ( ClassInfo_t *  opaque_cl,
const char *  method 
)
virtual

Return pointer to cling interface function for a method of a class with a certain name.

Implements TInterpreter.

Definition at line 3960 of file TCling.cxx.

Referenced by TROOT::GetFile().

§ GetFunctionName()

void TCling::GetFunctionName ( const clang::FunctionDecl *  decl,
std::string &  name 
) const
virtual

Definition at line 7304 of file TCling.cxx.

Referenced by FuncTempInfo_Name().

§ GetFunctionOverloads()

void TCling::GetFunctionOverloads ( ClassInfo_t *  cl,
const char *  funcname,
std::vector< DeclId_t > &  res 
) const
virtual

Insert overloads of name in cl to res.

Implements TInterpreter.

Definition at line 3979 of file TCling.cxx.

§ GetFunctionTemplate()

TInterpreter::DeclId_t TCling::GetFunctionTemplate ( ClassInfo_t *  opaque_cl,
const char *  name 
)
virtual

Return pointer to cling interface function for a method of a class with a certain name.

Implements TInterpreter.

Definition at line 4082 of file TCling.cxx.

Referenced by TROOT::GetFile().

§ GetFunctionWithPrototype()

TInterpreter::DeclId_t TCling::GetFunctionWithPrototype ( ClassInfo_t *  opaque_cl,
const char *  method,
const char *  proto,
Bool_t  objectIsConst = kFALSE,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
)
virtual

Return pointer to cling interface function for a method of a class with a certain prototype, i.e.

"char*,int,float". If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 4060 of file TCling.cxx.

§ GetFunctionWithValues()

TInterpreter::DeclId_t TCling::GetFunctionWithValues ( ClassInfo_t *  opaque_cl,
const char *  method,
const char *  params,
Bool_t  objectIsConst = kFALSE 
)
virtual

Return pointer to cling DeclId for a method of a class with a certain prototype, i.e.

"char*,int,float". If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 4038 of file TCling.cxx.

§ Getgvp()

Long_t TCling::Getgvp ( ) const
virtual

Interface to the CINT global object pointer which was controlling the behavior of the wrapper around the calls to operator new and the constructor and operator delete and the destructor.

Reimplemented from TInterpreter.

Definition at line 6095 of file TCling.cxx.

§ GetIncludePath()

const char * TCling::GetIncludePath ( )
virtual

Refresh the list of include paths known to the interpreter and return it with -I prepended.

Implements TInterpreter.

Definition at line 5977 of file TCling.cxx.

§ GetInterfaceMethod()

void * TCling::GetInterfaceMethod ( TClass cl,
const char *  method,
const char *  params,
Bool_t  objectIsConst = kFALSE 
)
virtual

Return pointer to cling interface function for a method of a class with parameters params (params is a string of actual arguments, not formal ones).

If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 3938 of file TCling.cxx.

§ GetInterfaceMethodWithPrototype()

void * TCling::GetInterfaceMethodWithPrototype ( TClass cl,
const char *  method,
const char *  proto,
Bool_t  objectIsConst = kFALSE,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
)
virtual

Return pointer to cling interface function for a method of a class with a certain prototype, i.e.

"char*,int,float". If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 4015 of file TCling.cxx.

§ GetInterpreter()

cling::Interpreter* TCling::GetInterpreter ( )
inline

Definition at line 160 of file TCling.h.

§ GetInterpreterStateMarker()

unsigned long long TCling::GetInterpreterStateMarker ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 190 of file TCling.h.

§ GetInterpreterTypeName()

void TCling::GetInterpreterTypeName ( const char *  name,
std::string &  output,
Bool_t  full = kFALSE 
)
virtual

The 'name' is known to the interpreter, this function returns the internal version of this name (usually just resolving typedefs) This is used in particular to synchronize between the name used by rootcling and by the run-time environment (TClass) Return 0 if the name is not known.

Implements TInterpreter.

Definition at line 4105 of file TCling.cxx.

§ GetMangledName()

TString TCling::GetMangledName ( TClass cl,
const char *  method,
const char *  params,
Bool_t  objectIsConst = kFALSE 
)
virtual

Return the cling mangled name for a method of a class with parameters params (params is a string of actual arguments, not formal ones).

If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 3893 of file TCling.cxx.

§ GetMangledNameWithPrototype()

TString TCling::GetMangledNameWithPrototype ( TClass cl,
const char *  method,
const char *  proto,
Bool_t  objectIsConst = kFALSE,
ROOT::EFunctionMatchMode  mode = ROOT::kConversionMatch 
)
virtual

Return the cling mangled name for a method of a class with a certain prototype, i.e.

"char*,int,float". If the class is 0 the global function list will be searched.

Implements TInterpreter.

Definition at line 3920 of file TCling.cxx.

§ GetMapfile()

TEnv* TCling::GetMapfile ( ) const
inlinevirtual

Reimplemented from TInterpreter.

Definition at line 178 of file TCling.h.

§ GetModTClasses()

std::set<TClass*>& TCling::GetModTClasses ( )
inline

Definition at line 505 of file TCling.h.

Referenced by UpdateClassInfoWithDecl().

§ GetMore()

Int_t TCling::GetMore ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 179 of file TCling.h.

§ GetNormalizedContext()

const ROOT::TMetaUtils::TNormalizedCtxt& TCling::GetNormalizedContext ( ) const
inline

Definition at line 312 of file TCling.h.

§ GetObjectAddress()

TObject * TCling::GetObjectAddress ( const char *  Name,
void *&  LookupCtx 
)

If the interpreter encounters Name, check whether that is an object ROOT could retrieve.

To not re-read objects from disk, cache the name/object pair for a given LookupCtx.

Definition at line 6312 of file TCling.cxx.

§ Getp2f2funcname()

const char * TCling::Getp2f2funcname ( void receiver) const
virtual

Reimplemented from TInterpreter.

Definition at line 6103 of file TCling.cxx.

§ GetPrompt()

char* TCling::GetPrompt ( )
inlinevirtual

Implements TInterpreter.

Definition at line 183 of file TCling.h.

§ GetRootMapFiles()

TObjArray* TCling::GetRootMapFiles ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 189 of file TCling.h.

§ GetSecurityError()

int TCling::GetSecurityError ( ) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6113 of file TCling.cxx.

§ GetSharedLibDeps()

const char * TCling::GetSharedLibDeps ( const char *  lib)
virtual

Get the list a libraries on which the specified lib depends.

The returned string contains as first element the lib itself. Returns 0 in case the lib does not exist or does not have any dependencies.

Implements TInterpreter.

Definition at line 5922 of file TCling.cxx.

§ GetSharedLibs()

const char * TCling::GetSharedLibs ( )
virtual

Return the list of shared libraries loaded into the process.

Implements TInterpreter.

Definition at line 5867 of file TCling.cxx.

Referenced by ReloadAllSharedLibraryMaps(), and UnloadAllSharedLibraryMaps().

§ GetSTLIncludePath()

const char * TCling::GetSTLIncludePath ( ) const
virtual

Return the directory containing CINT's stl cintdlls.

Reimplemented from TInterpreter.

Definition at line 6008 of file TCling.cxx.

§ GetTopLevelMacroName()

const char * TCling::GetTopLevelMacroName ( ) const
virtual

Return the file name of the current un-included interpreted file.

See the documentation for GetCurrentMacroName().

Reimplemented from TInterpreter.

Definition at line 4321 of file TCling.cxx.

§ HandleNewDecl()

void TCling::HandleNewDecl ( const void DV,
bool  isDeserialized,
std::set< TClass *> &  modifiedClasses 
)

Definition at line 450 of file TCling.cxx.

Referenced by UpdateListsOnCommitted().

§ HandleNewTransaction()

Bool_t TCling::HandleNewTransaction ( const cling::Transaction &  T)
private

Helper function to increase the internal Cling count of transactions that change the AST.

Definition at line 2887 of file TCling.cxx.

Referenced by UpdateListsOnCommitted(), and UpdateListsOnUnloaded().

§ Initialize()

void TCling::Initialize ( )
virtual

Initialize the interpreter, once TROOT::fInterpreter is set.

Implements TInterpreter.

Definition at line 1210 of file TCling.cxx.

§ InitRootmapFile()

void TCling::InitRootmapFile ( const char *  name)
private

Create a resource table and read the (possibly) three resource files, i.e $ROOTSYS/etc/system<name> (or ROOTETCDIR/system<name>), $HOME/<name> and

/<name>. ROOT always reads ".rootrc" (in TROOT::InitSystem()). You can read additional user defined resource files by creating additional TEnv objects. By setting the shell variable ROOTENV_NO_HOME=1 the reading of the $HOME/<name> resource file will be skipped. This might be useful in case the home directory resides on an automounted remote file system and one wants to avoid the file system from being mounted.

Definition at line 4533 of file TCling.cxx.

Referenced by LoadLibraryMap(), and SetClassSharedLibs().

§ InspectMembers()

void TCling::InspectMembers ( TMemberInspector insp,
const void obj,
const TClass cl,
Bool_t  isTransient 
)
virtual

Visit all members over members, recursing over base classes.

Implements TInterpreter.

Definition at line 2049 of file TCling.cxx.

§ IsAutoLoadNamespaceCandidate() [1/2]

Bool_t TCling::IsAutoLoadNamespaceCandidate ( const char *  name)

Definition at line 5450 of file TCling.cxx.

§ IsAutoLoadNamespaceCandidate() [2/2]

Bool_t TCling::IsAutoLoadNamespaceCandidate ( const clang::NamespaceDecl *  nsDecl)

Definition at line 5460 of file TCling.cxx.

§ IsAutoParsingSuspended()

Bool_t TCling::IsAutoParsingSuspended ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 301 of file TCling.h.

§ IsErrorMessagesEnabled()

Bool_t TCling::IsErrorMessagesEnabled ( ) const
virtual

If error messages are disabled, the interpreter should suppress its failures and warning messages from stdout.

Implements TInterpreter.

Definition at line 5949 of file TCling.cxx.

Referenced by SetErrorMessages().

§ IsLoaded()

Bool_t TCling::IsLoaded ( const char *  filename) const
virtual

Return true if the file has already been loaded by cint.

We will try in this order: actual filename filename as a path relative to the include path the shared library path

Implements TInterpreter.

Definition at line 2492 of file TCling.cxx.

Referenced by AutoParseImplRecurse().

§ IsProcessLineLocked()

Bool_t TCling::IsProcessLineLocked ( ) const
inlinevirtual

Implements TInterpreter.

Definition at line 270 of file TCling.h.

§ LazyFunctionCreatorAutoload()

void * TCling::LazyFunctionCreatorAutoload ( const std::string &  mangled_name)

Autoload a library based on a missing symbol.

Definition at line 5358 of file TCling.cxx.

§ LibraryLoaded()

void TCling::LibraryLoaded ( const void dyLibHandle,
const char *  canonicalName 
)

Definition at line 5853 of file TCling.cxx.

§ LibraryUnloaded()

void TCling::LibraryUnloaded ( const void dyLibHandle,
const char *  canonicalName 
)

Definition at line 5859 of file TCling.cxx.

§ Load()

Int_t TCling::Load ( const char *  filename,
Bool_t  system = kFALSE 
)
virtual

Load a library file in cling's memory.

if 'system' is true, the library is never unloaded. Return 0 on success, -1 on failure.

Implements TInterpreter.

Definition at line 2743 of file TCling.cxx.

§ LoadEnums()

void TCling::LoadEnums ( TListOfEnums cl) const
virtual

Create list of pointers to enums for TClass cl.

Implements TInterpreter.

Definition at line 3381 of file TCling.cxx.

§ LoadFile()

int TCling::LoadFile ( const char *  path) const
virtual

Load a source file or library called path into the interpreter.

Reimplemented from TInterpreter.

Definition at line 6126 of file TCling.cxx.

§ LoadFunctionTemplates()

void TCling::LoadFunctionTemplates ( TClass cl) const
virtual

Create list of pointers to function templates for TClass cl.

Implements TInterpreter.

Definition at line 3426 of file TCling.cxx.

§ LoadLibraryMap()

Int_t TCling::LoadLibraryMap ( const char *  rootmapfile = 0)
virtual

Load map between class and library.

If rootmapfile is specified a specific rootmap file can be added (typically used by ACLiC). In case of error -1 is returned, 0 otherwise. The interpreter uses this information to automatically load the shared library for a class (autoload mechanism), see the AutoLoad() methods below.

Implements TInterpreter.

Definition at line 4598 of file TCling.cxx.

Referenced by EnableAutoLoading(), ReloadAllSharedLibraryMaps(), and RescanLibraryMap().

§ LoadMacro()

void TCling::LoadMacro ( const char *  filename,
EErrorCode error = 0 
)
virtual

Load a macro file in cling's memory.

Implements TInterpreter.

Definition at line 2784 of file TCling.cxx.

Referenced by TROOT::IsProofServ().

§ LoadPCM()

bool TCling::LoadPCM ( TString  pcmFileName,
const char **  headers,
void(*)()  triggerFunc 
) const
private

Tries to load a PCM; returns true on success.

Definition at line 1268 of file TCling.cxx.

Referenced by RegisterModule().

§ LoadText()

Bool_t TCling::LoadText ( const char *  text) const
virtual

Load the declarations from text into the interpreter.

Note that this cannot be (top level) statements; text must contain top level declarations. Returns true on success, false on failure.

Reimplemented from TInterpreter.

Definition at line 6140 of file TCling.cxx.

Referenced by Declare().

§ MapCppName()

const char * TCling::MapCppName ( const char *  name) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 6148 of file TCling.cxx.

§ MethodArgInfo_DefaultValue()

const char * TCling::MethodArgInfo_DefaultValue ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7785 of file TCling.cxx.

§ MethodArgInfo_Delete()

void TCling::MethodArgInfo_Delete ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7730 of file TCling.cxx.

§ MethodArgInfo_Factory() [1/2]

MethodArgInfo_t * TCling::MethodArgInfo_Factory ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 7737 of file TCling.cxx.

§ MethodArgInfo_Factory() [2/2]

MethodArgInfo_t * TCling::MethodArgInfo_Factory ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7745 of file TCling.cxx.

§ MethodArgInfo_FactoryCopy()

MethodArgInfo_t * TCling::MethodArgInfo_FactoryCopy ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7753 of file TCling.cxx.

§ MethodArgInfo_IsValid()

bool TCling::MethodArgInfo_IsValid ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7761 of file TCling.cxx.

§ MethodArgInfo_Name()

const char * TCling::MethodArgInfo_Name ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7793 of file TCling.cxx.

§ MethodArgInfo_Next()

int TCling::MethodArgInfo_Next ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7769 of file TCling.cxx.

§ MethodArgInfo_Property()

Long_t TCling::MethodArgInfo_Property ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7777 of file TCling.cxx.

§ MethodArgInfo_TypeName()

const char * TCling::MethodArgInfo_TypeName ( MethodArgInfo_t *  marginfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7801 of file TCling.cxx.

§ MethodArgInfo_TypeNormalizedName()

std::string TCling::MethodArgInfo_TypeNormalizedName ( MethodArgInfo_t *  marginfo) const
virtual

Implements TInterpreter.

Definition at line 7809 of file TCling.cxx.

§ MethodCallReturnType()

auto TCling::MethodCallReturnType ( TFunction func) const
virtual

Implements TInterpreter.

Definition at line 7666 of file TCling.cxx.

§ MethodInfo_CreateSignature()

void TCling::MethodInfo_CreateSignature ( MethodInfo_t *  minfo,
TString signature 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7508 of file TCling.cxx.

§ MethodInfo_Delete()

void TCling::MethodInfo_Delete ( MethodInfo_t *  minfo) const
virtual

Interface to cling function.

Reimplemented from TInterpreter.

Definition at line 7501 of file TCling.cxx.

§ MethodInfo_ExtraProperty()

Long_t TCling::MethodInfo_ExtraProperty ( MethodInfo_t *  minfo) const
virtual

Implements TInterpreter.

Definition at line 7597 of file TCling.cxx.

§ MethodInfo_Factory() [1/3]

MethodInfo_t * TCling::MethodInfo_Factory ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 7516 of file TCling.cxx.

§ MethodInfo_Factory() [2/3]

MethodInfo_t * TCling::MethodInfo_Factory ( ClassInfo_t *  clinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7524 of file TCling.cxx.

§ MethodInfo_Factory() [3/3]

MethodInfo_t * TCling::MethodInfo_Factory ( DeclId_t  declid) const
virtual

Implements TInterpreter.

Definition at line 7532 of file TCling.cxx.

§ MethodInfo_FactoryCopy()

MethodInfo_t * TCling::MethodInfo_FactoryCopy ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7542 of file TCling.cxx.

§ MethodInfo_GetMangledName()

const char * TCling::MethodInfo_GetMangledName ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7613 of file TCling.cxx.

§ MethodInfo_GetPrototype()

const char * TCling::MethodInfo_GetPrototype ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7623 of file TCling.cxx.

§ MethodInfo_InterfaceMethod()

void * TCling::MethodInfo_InterfaceMethod ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7549 of file TCling.cxx.

§ MethodInfo_IsValid()

bool TCling::MethodInfo_IsValid ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7557 of file TCling.cxx.

§ MethodInfo_MethodCallReturnType()

auto TCling::MethodInfo_MethodCallReturnType ( MethodInfo_t *  minfo) const
virtual

Implements TInterpreter.

Definition at line 7677 of file TCling.cxx.

Referenced by MethodCallReturnType().

§ MethodInfo_Name()

const char * TCling::MethodInfo_Name ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7631 of file TCling.cxx.

§ MethodInfo_NArg()

int TCling::MethodInfo_NArg ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7565 of file TCling.cxx.

§ MethodInfo_NDefaultArg()

int TCling::MethodInfo_NDefaultArg ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7573 of file TCling.cxx.

§ MethodInfo_Next()

int TCling::MethodInfo_Next ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7581 of file TCling.cxx.

§ MethodInfo_Property()

Long_t TCling::MethodInfo_Property ( MethodInfo_t *  minfo) const
virtual

Implements TInterpreter.

Definition at line 7589 of file TCling.cxx.

§ MethodInfo_Title()

const char * TCling::MethodInfo_Title ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7658 of file TCling.cxx.

§ MethodInfo_Type()

TypeInfo_t * TCling::MethodInfo_Type ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7605 of file TCling.cxx.

§ MethodInfo_TypeName()

const char * TCling::MethodInfo_TypeName ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7639 of file TCling.cxx.

§ MethodInfo_TypeNormalizedName()

std::string TCling::MethodInfo_TypeNormalizedName ( MethodInfo_t *  minfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7647 of file TCling.cxx.

§ operator=()

TCling& TCling::operator= ( const TCling )
private

§ PrintIntro()

void TCling::PrintIntro ( )
virtual

No-op; see TRint instead.

Implements TInterpreter.

Definition at line 2031 of file TCling.cxx.

§ ProcessLine()

Long_t TCling::ProcessLine ( const char *  line,
EErrorCode error = 0 
)
virtual

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).

Implements TInterpreter.

Definition at line 1853 of file TCling.cxx.

Referenced by LoadMacro(), TROOT::MustClean(), ProcessLineAsynch(), and ProcessLineSynch().

§ ProcessLineAsynch()

Long_t TCling::ProcessLineAsynch ( const char *  line,
EErrorCode error = 0 
)

Let cling process a command line asynch.

Definition at line 2792 of file TCling.cxx.

§ ProcessLineSynch()

Long_t TCling::ProcessLineSynch ( const char *  line,
EErrorCode error = 0 
)
virtual

Let cling process a command line synchronously, i.e we are waiting it will be finished.

Implements TInterpreter.

Definition at line 2801 of file TCling.cxx.

Referenced by EndOfLineAction().

§ ReadRootmapFile()

int TCling::ReadRootmapFile ( const char *  rootmapfile,
TUniqueString uniqueString = nullptr 
)
private

Read and parse a rootmapfile in its new format, and return 0 in case of success, -1 if the file has already been read, and -3 in case its format is the old one (e.g.

containing "Library.ClassName")

Definition at line 4430 of file TCling.cxx.

Referenced by InitRootmapFile(), and LoadLibraryMap().

§ RecursiveRemove()

void TCling::RecursiveRemove ( TObject obj)
virtual

Delete object from cling symbol table so it can not be used anymore.

cling objects are always on the heap.

Reimplemented from TObject.

Definition at line 2905 of file TCling.cxx.

§ RegisterLoadedSharedLibrary()

void TCling::RegisterLoadedSharedLibrary ( const char *  filename)
private

Register a new shared library name with the interpreter; add it to fSharedLibs.

Definition at line 2671 of file TCling.cxx.

Referenced by UpdateListOfLoadedSharedLibraries().

§ RegisterModule()

void TCling::RegisterModule ( const char *  modulename,
const char **  headers,
const char **  includePaths,
const char *  payloadCode,
const char *  fwdDeclsCode,
void(*)()  triggerFunc,
const FwdDeclArgsToKeepCollection_t fwdDeclsArgToSkip,
const char **  classesHeaders 
)
virtual

Inject the module named "modulename" into cling; load all headers.

headers is a 0-terminated array of header files to #include after loading the module. The module is searched for in all $LD_LIBRARY_PATH entries (or PATH% on Windows). This function gets called by the static initialization of dictionary libraries. The payload code is injected "as is" in the interpreter. The value of 'triggerFunc' is used to find the shared library location.

Implements TInterpreter.

Definition at line 1484 of file TCling.cxx.

Referenced by TROOT::MustClean().

§ RegisterTClassUpdate()

void TCling::RegisterTClassUpdate ( TClass oldcl,
DictFuncPtr_t  dict 
)
virtual

Register classes that already existed prior to their dictionary loading and that already had a ClassInfo (and thus would not be refresh via UpdateClassInfo.

Implements TInterpreter.

Definition at line 1821 of file TCling.cxx.

§ RegisterTemporary() [1/2]

void TCling::RegisterTemporary ( const TInterpreterValue value)

Definition at line 6285 of file TCling.cxx.

Referenced by Calc(), and ProcessLine().

§ RegisterTemporary() [2/2]

void TCling::RegisterTemporary ( const cling::Value &  value)

Register value as a temporary, extending its lifetime to that of the interpreter.

This is needed for TCling's compatibility interfaces returning long - the address of the temporary objects. As such, "simple" types don't need to be stored; they are returned by value; only pointers / references / objects need to be stored.

Definition at line 6299 of file TCling.cxx.

§ ReloadAllSharedLibraryMaps()

Int_t TCling::ReloadAllSharedLibraryMaps ( )
virtual

Reload the library map entries coming from all the loaded shared libraries, after first unloading the current ones.

In case of error -1 is returned, 0 otherwise.

Implements TInterpreter.

Definition at line 4800 of file TCling.cxx.

§ RescanLibraryMap()

Int_t TCling::RescanLibraryMap ( )
virtual

Scan again along the dynamic path for library maps.

Entries for the loaded shared libraries are unloaded first. This can be useful after reseting the dynamic path through TSystem::SetDynamicPath() In case of error -1 is returned, 0 otherwise.

Implements TInterpreter.

Definition at line 4788 of file TCling.cxx.

§ Reset()

void TCling::Reset ( void  )
virtual

Pressing Ctrl+C should forward here.

In the case where we have had continuation requested we must reset it.

Implements TInterpreter.

Definition at line 2923 of file TCling.cxx.

§ ResetAll()

void TCling::ResetAll ( )
virtual

Reset the Cling state to its initial state.

Implements TInterpreter.

Definition at line 2939 of file TCling.cxx.

Referenced by TCling().

§ ResetGlobals()

void TCling::ResetGlobals ( )
virtual

Reset in Cling the list of global variables to the state saved by the last call to TCling::SaveGlobalsContext().

Note: Right now, all we do is run the global destructors.

Implements TInterpreter.

Definition at line 2955 of file TCling.cxx.

§ ResetGlobalVar()

void TCling::ResetGlobalVar ( void obj)
virtual

Reset the Cling 'user' global objects/variables state to the state saved by the last call to TCling::SaveGlobalsContext().

Implements TInterpreter.

Definition at line 2969 of file TCling.cxx.

§ RewindDictionary()

void TCling::RewindDictionary ( )
virtual

Rewind Cling dictionary to the point where it was before executing the current macro.

This function is typically called after SEGV or ctlr-C after doing a longjmp back to the prompt.

Implements TInterpreter.

Definition at line 2984 of file TCling.cxx.

§ SaveContext()

void TCling::SaveContext ( )
virtual

Save the current Cling state.

Implements TInterpreter.

Definition at line 3072 of file TCling.cxx.

Referenced by TROOT::MustClean().

§ SaveGlobalsContext()

void TCling::SaveGlobalsContext ( )
virtual

Save the current Cling state of global objects.

Implements TInterpreter.

Definition at line 3085 of file TCling.cxx.

§ SetAlloclockfunc()

void TCling::SetAlloclockfunc ( void(*)()  ) const
virtual

[Place holder for Mutex Lock] Provide the interpreter with a way to acquire a lock used to protect critical section of its code (non-thread safe parts).

Reimplemented from TInterpreter.

Definition at line 6161 of file TCling.cxx.

§ SetAllocunlockfunc()

void TCling::SetAllocunlockfunc ( void(*)()  ) const
virtual

[Place holder for Mutex Unlock] Provide the interpreter with a way to release a lock used to protect critical section of its code (non-thread safe parts).

Reimplemented from TInterpreter.

Definition at line 6171 of file TCling.cxx.

§ SetAutoLoadCallBack()

void* TCling::SetAutoLoadCallBack ( void cb)
inlinevirtual

Reimplemented from TInterpreter.

Definition at line 164 of file TCling.h.

§ SetClassAutoloading()

int TCling::SetClassAutoloading ( int  autoload) const
virtual

Enable/Disable the Autoloading of libraries.

Returns the old value, i.e whether it was enabled or not.

Reimplemented from TInterpreter.

Definition at line 6180 of file TCling.cxx.

Referenced by AutoLoad(), AutoParse(), CheckClassInfo(), Declare(), EnableAutoLoading(), RegisterModule(), TCling(), and UpdateClassInfoWithDecl().

§ SetClassAutoparsing()

int TCling::SetClassAutoparsing ( int  autoparse)
virtual

Enable/Disable the Autoparsing of headers.

Returns the old value, i.e whether it was enabled or not.

Reimplemented from TInterpreter.

Definition at line 6195 of file TCling.cxx.

§ SetClassInfo()

void TCling::SetClassInfo ( TClass cl,
Bool_t  reload = kFALSE 
)
virtual

Set pointer to the TClingClassInfo in TClass.

If 'reload' is true, (attempt to) generate a new ClassInfo even if we already have one.

Implements TInterpreter.

Definition at line 3121 of file TCling.cxx.

§ SetClassSharedLibs()

Int_t TCling::SetClassSharedLibs ( const char *  cls,
const char *  libs 
)
virtual

Register the autoloading information for a class.

libs is a space separated list of libraries.

Implements TInterpreter.

Definition at line 4941 of file TCling.cxx.

§ SetDeclAttr()

void TCling::SetDeclAttr ( DeclId_t  declId,
const char *  attribute 
)
virtual

Implements TInterpreter.

Definition at line 7267 of file TCling.cxx.

§ SetErrmsgcallback()

void TCling::SetErrmsgcallback ( void p) const
virtual

Set a callback to receive error messages.

Reimplemented from TInterpreter.

Definition at line 6216 of file TCling.cxx.

§ SetErrorMessages()

Bool_t TCling::SetErrorMessages ( Bool_t  enable = kTRUE)
virtual

If error messages are disabled, the interpreter should suppress its failures and warning messages from stdout.

Return the previous state.

Implements TInterpreter.

Definition at line 5963 of file TCling.cxx.

§ SetGetline()

void TCling::SetGetline ( const char *(*)(const char *prompt)  getlineFunc,
void(*)(const char *line histaddFunc 
)
virtual

Set a getline function to call when input is needed.

Implements TInterpreter.

Definition at line 2870 of file TCling.cxx.

§ Setgvp()

void TCling::Setgvp ( Long_t  gvp) const
virtual

Interface to the cling global object pointer which was controlling the behavior of the wrapper around the calls to operator new and the constructor and operator delete and the destructor.

Reimplemented from TInterpreter.

Definition at line 6230 of file TCling.cxx.

§ SetProcessLineLock()

void TCling::SetProcessLineLock ( Bool_t  lock = kTRUE)
inlinevirtual

Implements TInterpreter.

Definition at line 273 of file TCling.h.

§ SetRTLD_LAZY()

void TCling::SetRTLD_LAZY ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 6245 of file TCling.cxx.

§ SetRTLD_NOW()

void TCling::SetRTLD_NOW ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 6238 of file TCling.cxx.

§ SetSuspendAutoParsing()

Bool_t TCling::SetSuspendAutoParsing ( Bool_t  value)
protectedvirtual

Suspend the Autoparsing of headers.

Returns the old value, i.e whether it was suspended or not.

Implements TInterpreter.

Definition at line 6206 of file TCling.cxx.

§ SetTempLevel()

void TCling::SetTempLevel ( int  val) const
virtual

Create / close a scope for temporaries.

No-op for cling; use cling::Value instead.

Reimplemented from TInterpreter.

Definition at line 6254 of file TCling.cxx.

§ TransactionRollback()

void TCling::TransactionRollback ( const cling::Transaction &  T)

Definition at line 5830 of file TCling.cxx.

§ TypedefInfo_Delete()

void TCling::TypedefInfo_Delete ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7915 of file TCling.cxx.

§ TypedefInfo_Factory() [1/2]

TypedefInfo_t * TCling::TypedefInfo_Factory ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 7922 of file TCling.cxx.

§ TypedefInfo_Factory() [2/2]

TypedefInfo_t * TCling::TypedefInfo_Factory ( const char *  name) const
virtual

Reimplemented from TInterpreter.

Definition at line 7930 of file TCling.cxx.

§ TypedefInfo_FactoryCopy()

TypedefInfo_t * TCling::TypedefInfo_FactoryCopy ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7938 of file TCling.cxx.

§ TypedefInfo_Init()

void TCling::TypedefInfo_Init ( TypedefInfo_t *  tinfo,
const char *  name 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7945 of file TCling.cxx.

§ TypedefInfo_IsValid()

bool TCling::TypedefInfo_IsValid ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7955 of file TCling.cxx.

§ TypedefInfo_Name()

const char * TCling::TypedefInfo_Name ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7995 of file TCling.cxx.

§ TypedefInfo_Next()

Int_t TCling::TypedefInfo_Next ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7963 of file TCling.cxx.

§ TypedefInfo_Property()

Long_t TCling::TypedefInfo_Property ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7971 of file TCling.cxx.

§ TypedefInfo_Size()

int TCling::TypedefInfo_Size ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7979 of file TCling.cxx.

§ TypedefInfo_Title()

const char * TCling::TypedefInfo_Title ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 8003 of file TCling.cxx.

§ TypedefInfo_TrueName()

const char * TCling::TypedefInfo_TrueName ( TypedefInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7987 of file TCling.cxx.

§ TypeInfo_Delete()

void TCling::TypeInfo_Delete ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7822 of file TCling.cxx.

§ TypeInfo_Factory() [1/2]

TypeInfo_t * TCling::TypeInfo_Factory ( ) const
virtual

Reimplemented from TInterpreter.

Definition at line 7829 of file TCling.cxx.

§ TypeInfo_Factory() [2/2]

TypeInfo_t * TCling::TypeInfo_Factory ( const char *  name) const
virtual

Reimplemented from TInterpreter.

Definition at line 7837 of file TCling.cxx.

§ TypeInfo_FactoryCopy()

TypeInfo_t * TCling::TypeInfo_FactoryCopy ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7845 of file TCling.cxx.

§ TypeInfo_Init()

void TCling::TypeInfo_Init ( TypeInfo_t *  tinfo,
const char *  funcname 
) const
virtual

Reimplemented from TInterpreter.

Definition at line 7852 of file TCling.cxx.

§ TypeInfo_IsValid()

bool TCling::TypeInfo_IsValid ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7861 of file TCling.cxx.

§ TypeInfo_Name()

const char * TCling::TypeInfo_Name ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7869 of file TCling.cxx.

§ TypeInfo_Property()

Long_t TCling::TypeInfo_Property ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7877 of file TCling.cxx.

§ TypeInfo_RefType()

int TCling::TypeInfo_RefType ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7885 of file TCling.cxx.

§ TypeInfo_Size()

int TCling::TypeInfo_Size ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7893 of file TCling.cxx.

§ TypeInfo_TrueName()

const char * TCling::TypeInfo_TrueName ( TypeInfo_t *  tinfo) const
virtual

Reimplemented from TInterpreter.

Definition at line 7901 of file TCling.cxx.

§ TypeName()

const char * TCling::TypeName ( const char *  typeDesc)
virtual

Return the absolute type of typeDesc.

E.g.: typeDesc = "class TNamed**", returns "TNamed". You need to use the result immediately before it is being overwritten.

Implements TInterpreter.

Definition at line 4383 of file TCling.cxx.

§ UnloadAllSharedLibraryMaps()

Int_t TCling::UnloadAllSharedLibraryMaps ( )
virtual

Unload the library map entries coming from all the loaded shared libraries.

Returns 0 if succesful

Implements TInterpreter.

Definition at line 4861 of file TCling.cxx.

Referenced by RescanLibraryMap().

§ UnloadClassMembers()

void TCling::UnloadClassMembers ( TClass cl,
const clang::DeclContext *  DC 
)
private

Helper function to go through the members of a class or namespace and unload them.

Definition at line 5664 of file TCling.cxx.

Referenced by UpdateListsOnUnloaded().

§ UnloadFile()

int TCling::UnloadFile ( const char *  path) const
virtual

Reimplemented from TInterpreter.

Definition at line 6260 of file TCling.cxx.

§ UnloadLibraryMap()

Int_t TCling::UnloadLibraryMap ( const char *  library)
virtual

Unload library map entries coming from the specified library.

Returns -1 in case no entries for the specified library were found, 0 otherwise.

Implements TInterpreter.

Definition at line 4879 of file TCling.cxx.

Referenced by ReloadAllSharedLibraryMaps(), and UnloadAllSharedLibraryMaps().

§ UnRegisterTClassUpdate()

void TCling::UnRegisterTClassUpdate ( const TClass oldcl)
virtual

If the dictionary is loaded, we can remove the class from the list (otherwise the class might be loaded twice).

Implements TInterpreter.

Definition at line 1830 of file TCling.cxx.

§ UpdateAllCanvases()

void TCling::UpdateAllCanvases ( )
static

Update all canvases at end the terminal input command.

Definition at line 5556 of file TCling.cxx.

Referenced by ProcessLine().

§ UpdateClassInfo()

void TCling::UpdateClassInfo ( char *  name,
Long_t  tagnum 
)
static

No op: see TClingCallbacks.

Definition at line 5541 of file TCling.cxx.

§ UpdateClassInfoWithDecl()

void TCling::UpdateClassInfoWithDecl ( const void vTD)

Internal function. Inform a TClass about its new TagDecl or NamespaceDecl.

Definition at line 5468 of file TCling.cxx.

§ UpdateClassInfoWork()

void TCling::UpdateClassInfoWork ( const char *  name)
static

Definition at line 5547 of file TCling.cxx.

§ UpdateEnumConstants()

void TCling::UpdateEnumConstants ( TEnum enumObj,
TClass cl 
) const
virtual

Implements TInterpreter.

Definition at line 375 of file TCling.cxx.

§ UpdateListOfDataMembers()

void TCling::UpdateListOfDataMembers ( TClass cl) const

Update the list of pointers to data members for TClass cl This is now a nop.

The creation and updating is handled in TListOfDataMembers.

Definition at line 3490 of file TCling.cxx.

§ UpdateListOfGlobalFunctions()

void TCling::UpdateListOfGlobalFunctions ( )
virtual

No op: see TClingCallbacks (used to update the list of global functions)

Implements TInterpreter.

Definition at line 3105 of file TCling.cxx.

§ UpdateListOfGlobals()

void TCling::UpdateListOfGlobals ( )
virtual

No op: see TClingCallbacks (used to update the list of globals)

Implements TInterpreter.

Definition at line 3098 of file TCling.cxx.

§ UpdateListOfLoadedSharedLibraries()

void TCling::UpdateListOfLoadedSharedLibraries ( )
private

Definition at line 2596 of file TCling.cxx.

Referenced by GetSharedLibs(), and Load().

§ UpdateListOfMethods()

void TCling::UpdateListOfMethods ( TClass cl) const
virtual

Update the list of pointers to method for TClass cl This is now a nop.

The creation and updating is handled in TListOfFunctions.

Implements TInterpreter.

Definition at line 3481 of file TCling.cxx.

§ UpdateListOfTypes()

void TCling::UpdateListOfTypes ( )
virtual

No op: see TClingCallbacks (used to update the list of types)

Implements TInterpreter.

Definition at line 3112 of file TCling.cxx.

§ UpdateListsOnCommitted()

void TCling::UpdateListsOnCommitted ( const cling::Transaction &  T)

Definition at line 5567 of file TCling.cxx.

§ UpdateListsOnUnloaded()

void TCling::UpdateListsOnUnloaded ( const cling::Transaction &  T)

Definition at line 5717 of file TCling.cxx.

Member Data Documentation

§ fAllowLibLoad

Bool_t TCling::fAllowLibLoad
private

Definition at line 118 of file TCling.h.

Referenced by AutoLoad(), EnableAutoLoading(), Load(), SetClassAutoloading(), and TCling().

§ fAutoLoadCallBack

void* TCling::fAutoLoadCallBack
private

Definition at line 137 of file TCling.h.

Referenced by AutoLoad().

§ fClassesHeadersMap

std::map<size_t,std::vector<const char*> > TCling::fClassesHeadersMap
private

Definition at line 109 of file TCling.h.

Referenced by AutoParseImplRecurse(), RegisterModule(), and TransactionRollback().

§ fClassesToUpdate

std::vector<std::pair<TClass*,DictFuncPtr_t> > TCling::fClassesToUpdate
private

Definition at line 136 of file TCling.h.

Referenced by AutoParse(), RegisterModule(), RegisterTClassUpdate(), and UnRegisterTClassUpdate().

§ fClingCallbacks

TClingCallbacks* TCling::fClingCallbacks
private

§ fCurExecutingMacros

std::vector<const char*> TCling::fCurExecutingMacros
private

Definition at line 139 of file TCling.h.

Referenced by ExecuteMacro(), GetCurrentMacroName(), GetTopLevelMacroName(), and ProcessLine().

§ fExitCode

Int_t TCling::fExitCode
private

Definition at line 100 of file TCling.h.

§ fGlobalsListSerial

Int_t TCling::fGlobalsListSerial
private

Definition at line 105 of file TCling.h.

§ fgSetOfSpecials

void * TCling::fgSetOfSpecials = 0
staticprivate

Definition at line 95 of file TCling.h.

Referenced by RecursiveRemove().

§ fHeaderParsingOnDemand

Bool_t TCling::fHeaderParsingOnDemand
private

Definition at line 147 of file TCling.h.

Referenced by AutoParse(), RegisterModule(), and SetClassAutoparsing().

§ fIncludePath

TString TCling::fIncludePath
private

Definition at line 106 of file TCling.h.

Referenced by GetIncludePath().

§ fInterpreter

cling::Interpreter* TCling::fInterpreter
private

§ fIsAutoParsingSuspended

Bool_t TCling::fIsAutoParsingSuspended
private

Definition at line 148 of file TCling.h.

Referenced by AutoParse(), SetSuspendAutoParsing(), and TCling().

§ fLockProcessLine

Bool_t TCling::fLockProcessLine
private

Definition at line 117 of file TCling.h.

Referenced by ExecuteMacro(), ProcessLine(), ProcessLineSynch(), and TCling().

§ fLookedUpClasses

std::set<size_t> TCling::fLookedUpClasses
private

Definition at line 111 of file TCling.h.

Referenced by AutoParseImplRecurse(), RegisterModule(), and TransactionRollback().

§ fLookupHelper

ROOT::TMetaUtils::TClingLookupHelper* TCling::fLookupHelper
private

Definition at line 125 of file TCling.h.

Referenced by TCling(), and ~TCling().

§ fMapfile

TEnv* TCling::fMapfile
private

§ fMetaProcessor

cling::MetaProcessor* TCling::fMetaProcessor
private

Definition at line 121 of file TCling.h.

Referenced by Load(), LoadFile(), ProcessLine(), RegisterModule(), Reset(), TCling(), UnloadFile(), and ~TCling().

§ fModTClasses

std::set<TClass*> TCling::fModTClasses
private

Definition at line 135 of file TCling.h.

§ fMore

Int_t TCling::fMore
private

Definition at line 99 of file TCling.h.

Referenced by TCling().

§ fNormalizedCtxt

ROOT::TMetaUtils::TNormalizedCtxt* TCling::fNormalizedCtxt
private

§ fNSFromRootmaps

std::unordered_set<const clang::NamespaceDecl*> TCling::fNSFromRootmaps
private

Definition at line 115 of file TCling.h.

Referenced by IsAutoLoadNamespaceCandidate(), and LoadLibraryMap().

§ fParsedPayloadsAddresses

std::set<const char*> TCling::fParsedPayloadsAddresses
private

Definition at line 113 of file TCling.h.

Referenced by AutoParseImplRecurse(), and TransactionRollback().

§ fPayloads

std::set<size_t> TCling::fPayloads
private

Definition at line 112 of file TCling.h.

Referenced by AutoParseImplRecurse(), and RegisterModule().

§ fPrevLoadedDynLibInfo

void* TCling::fPrevLoadedDynLibInfo
private

Definition at line 127 of file TCling.h.

Referenced by GetSharedLibs(), LibraryUnloaded(), and UpdateListOfLoadedSharedLibraries().

§ fPrompt

char TCling::fPrompt[64]
private

Definition at line 101 of file TCling.h.

Referenced by TCling().

§ fRegisterModuleDyLibs

std::vector<void*> TCling::fRegisterModuleDyLibs
private

Definition at line 128 of file TCling.h.

Referenced by LazyFunctionCreatorAutoload(), and RegisterModule().

§ fRootmapFiles

TObjArray* TCling::fRootmapFiles
private

§ fRootmapLoadPath

TString TCling::fRootmapLoadPath
private

Definition at line 107 of file TCling.h.

Referenced by LoadLibraryMap().

§ fSharedLibs

TString TCling::fSharedLibs
private

§ fSpecialObjectMaps

std::map<SpecialObjectLookupCtx_t, SpecialObjectMap_t> TCling::fSpecialObjectMaps
private

Definition at line 143 of file TCling.h.

Referenced by GetObjectAddress().

§ fStringHashFunction

std::hash<std::string> TCling::fStringHashFunction
private

Definition at line 114 of file TCling.h.

Referenced by AutoParseImplRecurse(), and RegisterModule().

§ fTemporaries

std::vector<cling::Value>* TCling::fTemporaries
private

Definition at line 123 of file TCling.h.

Referenced by RegisterTemporary(), TCling(), and ~TCling().

§ fTransactionCount

ULong64_t TCling::fTransactionCount
private

Definition at line 138 of file TCling.h.

Referenced by HandleNewTransaction().

§ fTransactionHeadersMap

std::map<const cling::Transaction*,size_t> TCling::fTransactionHeadersMap
private

Definition at line 110 of file TCling.h.

Referenced by AutoParseImplRecurse(), and TransactionRollback().


The documentation for this class was generated from the following files: