Logo ROOT  
Reference Guide
TInterpreter.h
Go to the documentation of this file.
1 // @(#)root/meta:$Id$
2 // Author: Fons Rademakers 01/03/96
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 
13 #ifndef ROOT_TInterpreter
14 #define ROOT_TInterpreter
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TInterpreter //
19 // //
20 // This class defines an abstract interface to a generic command line //
21 // interpreter. //
22 // //
23 //////////////////////////////////////////////////////////////////////////
24 
25 #include "TDataType.h"
26 #include "TDictionary.h"
27 #include "TInterpreterValue.h"
28 #include "TNamed.h"
29 #include "TVirtualRWMutex.h"
30 
31 #include <map>
32 #include <typeinfo>
33 #include <vector>
34 #include <string>
35 #include <utility>
36 
37 class TClass;
38 class TEnv;
39 class TFunction;
40 class TMethod;
41 class TObjArray;
42 class TEnum;
43 class TListOfEnums;
44 class TSeqCollection;
45 
47 
48 #if defined (_REENTRANT) || defined (WIN32)
49 # define R__LOCKGUARD_CLING(mutex) ::ROOT::Internal::InterpreterMutexRegistrationRAII _R__UNIQUE_(R__guard)(mutex); { }
50 #else
51 # define R__LOCKGUARD_CLING(mutex) (void)(mutex); { }
52 #endif
53 
54 namespace ROOT {
55 namespace Internal {
60 };
61 }
62 }
63 
64 class TInterpreter : public TNamed {
65 
66 protected:
67  virtual void Execute(TMethod *method, TObjArray *params, int *error = 0) = 0;
68  virtual Bool_t SetSuspendAutoParsing(Bool_t value) = 0;
69 
70  friend class SuspendAutoParsing;
71 
72 public:
73  // See as in TSchemaType.h.
74  typedef class std::map<std::string, std::string> MembersMap_t;
75 
76  enum EErrorCode {
77  kNoError = 0,
80  kFatal = 3,
81  kProcessing = 99
82  };
83 
85 
87  enum EKind {
91  kDtor
92  };
93 
94  typedef void (*Generic_t)(void*, int, void**, void*);
95  typedef void (*Ctor_t)(void**, void*, unsigned long);
96  typedef void (*Dtor_t)(void*, unsigned long, int);
97 
101  fKind(kGeneric), fGeneric(func) {}
103  fKind(kCtor), fCtor(func) {}
105  fKind(kDtor), fDtor(func) {}
106 
108  union {
112  };
113  };
114 
118  public:
121  };
122  virtual Bool_t IsAutoParsingSuspended() const = 0;
123 
125  TInterpreter *fInterp = nullptr;
126  bool fOldValue;
127 
128  public:
130  {
132  }
134  };
135 
136  typedef int (*AutoLoadCallBack_t)(const char*);
137  typedef std::vector<std::pair<std::string, int> > FwdDeclArgsToKeepCollection_t;
138 
139  TInterpreter() { } // for Dictionary
140  TInterpreter(const char *name, const char *title = "Generic Interpreter");
141  virtual ~TInterpreter() { }
142 
143  virtual void AddIncludePath(const char *path) = 0;
144  virtual void *SetAutoLoadCallBack(void* /*cb*/) { return 0; }
145  virtual void *GetAutoLoadCallBack() const { return 0; }
146  virtual Int_t AutoLoad(const char *classname, Bool_t knowDictNotLoaded = kFALSE) = 0;
147  virtual Int_t AutoLoad(const std::type_info& typeinfo, Bool_t knowDictNotLoaded = kFALSE) = 0;
148  virtual Int_t AutoParse(const char* cls) = 0;
149  virtual void ClearFileBusy() = 0;
150  virtual void ClearStack() = 0; // Delete existing temporary values
151  virtual Bool_t Declare(const char* code) = 0;
152  virtual void EndOfLineAction() = 0;
153  virtual TClass *GetClass(const std::type_info& typeinfo, Bool_t load) const = 0;
154  virtual Int_t GetExitCode() const = 0;
155  virtual TEnv *GetMapfile() const { return 0; }
156  virtual Int_t GetMore() const = 0;
157  virtual TClass *GenerateTClass(const char *classname, Bool_t emulation, Bool_t silent = kFALSE) = 0;
158  virtual TClass *GenerateTClass(ClassInfo_t *classinfo, Bool_t silent = kFALSE) = 0;
159  virtual Int_t GenerateDictionary(const char *classes, const char *includes = 0, const char *options = 0) = 0;
160  virtual char *GetPrompt() = 0;
161  virtual const char *GetSharedLibs() = 0;
162  virtual const char *GetClassSharedLibs(const char *cls) = 0;
163  virtual const char *GetSharedLibDeps(const char *lib, bool tryDyld = false) = 0;
164  virtual const char *GetIncludePath() = 0;
165  virtual const char *GetSTLIncludePath() const { return ""; }
166  virtual TObjArray *GetRootMapFiles() const = 0;
167  virtual void Initialize() = 0;
168  virtual void ShutDown() = 0;
169  virtual void InspectMembers(TMemberInspector&, const void* obj, const TClass* cl, Bool_t isTransient) = 0;
170  virtual Bool_t IsLoaded(const char *filename) const = 0;
171  virtual Bool_t IsLibraryLoaded(const char *libname) const = 0;
172  virtual Bool_t HasPCMForLibrary(const char *libname) const = 0;
173  virtual Int_t Load(const char *filenam, Bool_t system = kFALSE) = 0;
174  virtual void LoadMacro(const char *filename, EErrorCode *error = 0) = 0;
175  virtual Int_t LoadLibraryMap(const char *rootmapfile = 0) = 0;
176  virtual Int_t RescanLibraryMap() = 0;
179  virtual Int_t UnloadLibraryMap(const char *library) = 0;
180  virtual Long_t ProcessLine(const char *line, EErrorCode *error = 0) = 0;
181  virtual Long_t ProcessLineSynch(const char *line, EErrorCode *error = 0) = 0;
182  virtual void PrintIntro() = 0;
183  virtual bool RegisterPrebuiltModulePath(const std::string& FullPath,
184  const std::string& ModuleMapName = "module.modulemap") const = 0;
185  virtual void RegisterModule(const char* /*modulename*/,
186  const char** /*headers*/,
187  const char** /*includePaths*/,
188  const char* /*payloadCode*/,
189  const char* /*fwdDeclsCode*/,
190  void (* /*triggerFunc*/)(),
191  const FwdDeclArgsToKeepCollection_t& fwdDeclArgsToKeep,
192  const char** classesHeaders,
193  Bool_t lateRegistration = false,
194  Bool_t hasCxxModule = false) = 0;
196  virtual void RegisterTClassUpdate(TClass *oldcl,DictFuncPtr_t dict) = 0;
197  virtual void UnRegisterTClassUpdate(const TClass *oldcl) = 0;
198  virtual Int_t SetClassSharedLibs(const char *cls, const char *libs) = 0;
199  virtual void SetGetline(const char*(*getlineFunc)(const char* prompt),
200  void (*histaddFunc)(const char* line)) = 0;
201  virtual void Reset() = 0;
202  virtual void ResetAll() = 0;
203  virtual void ResetGlobals() = 0;
204  virtual void ResetGlobalVar(void *obj) = 0;
205  virtual void RewindDictionary() = 0;
206  virtual Int_t DeleteGlobal(void *obj) = 0;
207  virtual Int_t DeleteVariable(const char* name) = 0;
208  virtual void SaveContext() = 0;
209  virtual void SaveGlobalsContext() = 0;
210  virtual void UpdateListOfGlobals() = 0;
211  virtual void UpdateListOfGlobalFunctions() = 0;
212  virtual void UpdateListOfTypes() = 0;
213  virtual void SetClassInfo(TClass *cl, Bool_t reload = kFALSE) = 0;
214 
216  kUnknown = 0, // backward compatible with false
217  kKnown = 1,
219  };
220  virtual ECheckClassInfo CheckClassInfo(const char *name, Bool_t autoload, Bool_t isClassOrNamespaceOnly = kFALSE) = 0;
221 
222  virtual Bool_t CheckClassTemplate(const char *name) = 0;
223  virtual Long_t Calc(const char *line, EErrorCode* error = 0) = 0;
224  virtual void CreateListOfBaseClasses(TClass *cl) const = 0;
225  virtual void CreateListOfDataMembers(TClass *cl) const = 0;
226  virtual void CreateListOfMethods(TClass *cl) const = 0;
227  virtual void CreateListOfMethodArgs(TFunction *m) const = 0;
228  virtual void UpdateListOfMethods(TClass *cl) const = 0;
229  virtual TString GetMangledName(TClass *cl, const char *method, const char *params, Bool_t objectIsConst = kFALSE) = 0;
230  virtual TString GetMangledNameWithPrototype(TClass *cl, const char *method, const char *proto, Bool_t objectIsConst = kFALSE, ROOT::EFunctionMatchMode /* mode */ = ROOT::kConversionMatch) = 0;
231  virtual void GetInterpreterTypeName(const char *name, std::string &output, Bool_t full = kFALSE) = 0;
232  virtual void *GetInterfaceMethod(TClass *cl, const char *method, const char *params, Bool_t objectIsConst = kFALSE) = 0;
233  virtual void *GetInterfaceMethodWithPrototype(TClass *cl, const char *method, const char *proto, Bool_t objectIsConst = kFALSE, ROOT::EFunctionMatchMode /* mode */ = ROOT::kConversionMatch) = 0;
234  virtual void Execute(const char *function, const char *params, int *error = 0) = 0;
235  virtual void Execute(TObject *obj, TClass *cl, const char *method, const char *params, int *error = 0) = 0;
236  virtual void Execute(TObject *obj, TClass *cl, TMethod *method, TObjArray *params, int *error = 0) = 0;
237  virtual void ExecuteWithArgsAndReturn(TMethod *method, void* address, const void* args[] = 0, int /*nargs*/ = 0, void* ret= 0) const = 0;
238  virtual Long_t ExecuteMacro(const char *filename, EErrorCode *error = 0) = 0;
239  virtual Bool_t IsErrorMessagesEnabled() const = 0;
240  virtual Bool_t SetErrorMessages(Bool_t enable = kTRUE) = 0;
241  virtual Bool_t IsProcessLineLocked() const = 0;
242  virtual void SetProcessLineLock(Bool_t lock = kTRUE) = 0;
243  virtual const char *TypeName(const char *s) = 0;
244  virtual std::string ToString(const char *type, void *obj) = 0;
245 
247  virtual void ForgetMutexState() = 0;
248 
249  // All the functions below must be virtual with a dummy implementation
250  // These functions are redefined in TCling.
251 
252  // Misc
253  virtual int DisplayClass(FILE * /* fout */,const char * /* name */,int /* base */,int /* start */) const {return 0;}
254  virtual int DisplayIncludePath(FILE * /* fout */) const {return 0;}
255  virtual void *FindSym(const char * /* entry */) const {return 0;}
256  virtual void GenericError(const char * /* error */) const {;}
257  virtual Long_t GetExecByteCode() const {return 0;}
258  virtual const char *GetTopLevelMacroName() const {return 0;};
259  virtual const char *GetCurrentMacroName() const {return 0;};
260  virtual int GetSecurityError() const{return 0;}
261  virtual int LoadFile(const char * /* path */) const {return 0;}
262  virtual Bool_t LoadText(const char * /* text */) const {return kFALSE;}
263  virtual const char *MapCppName(const char*) const {return 0;}
264  virtual void SetAlloclockfunc(void (*)()) const {;}
265  virtual void SetAllocunlockfunc(void (*)()) const {;}
266  virtual int SetClassAutoLoading(int) const {return 0;}
267  int SetClassAutoloading(int a) const { return SetClassAutoLoading(a); } // Deprecated
268  virtual int SetClassAutoparsing(int) {return 0;};
269  virtual void SetErrmsgcallback(void * /* p */) const {;}
270  virtual void SetTempLevel(int /* val */) const {;}
271  virtual int UnloadFile(const char * /* path */) const {return 0;}
272 
273  /// The created temporary must be deleted by the caller.
274  /// Deprecated! Please use MakeInterpreterValue().
276  return MakeInterpreterValue().release();
277  }
278  virtual std::unique_ptr<TInterpreterValue> MakeInterpreterValue() const { return 0; }
279  virtual void CodeComplete(const std::string&, size_t&,
280  std::vector<std::string>&) {;}
281  virtual int Evaluate(const char*, TInterpreterValue&) {return 0;}
282 
283  // core/meta helper functions.
284  virtual EReturnType MethodCallReturnType(TFunction *func) const = 0;
286  virtual bool DiagnoseIfInterpreterException(const std::exception &e) const = 0;
287 
289  virtual DeclId_t GetDeclId(CallFunc_t *info) const = 0;
290  virtual DeclId_t GetDeclId(ClassInfo_t *info) const = 0;
291  virtual DeclId_t GetDeclId(DataMemberInfo_t *info) const = 0;
292  virtual DeclId_t GetDeclId(FuncTempInfo_t *info) const = 0;
293  virtual DeclId_t GetDeclId(MethodInfo_t *info) const = 0;
294  virtual DeclId_t GetDeclId(TypedefInfo_t *info) const = 0;
295 
296  virtual void SetDeclAttr(DeclId_t, const char* /* attribute */) = 0 ;
297 
298  virtual DeclId_t GetDataMember(ClassInfo_t *cl, const char *name) const = 0;
299  virtual DeclId_t GetDataMemberAtAddr(const void *addr) const = 0;
300  virtual DeclId_t GetDataMemberWithValue(const void *ptrvalue) const = 0;
301  virtual DeclId_t GetEnum(TClass *cl, const char *name) const = 0;
302  virtual TEnum* CreateEnum(void *VD, TClass *cl) const = 0;
303  virtual void UpdateEnumConstants(TEnum* enumObj, TClass* cl) const = 0;
304  virtual void LoadEnums(TListOfEnums& cl) const = 0;
305  virtual DeclId_t GetFunction(ClassInfo_t *cl, const char *funcname) = 0;
306  virtual DeclId_t GetFunctionWithPrototype(ClassInfo_t *cl, const char* method, const char* proto, Bool_t objectIsConst = kFALSE, ROOT::EFunctionMatchMode mode = ROOT::kConversionMatch) = 0;
307  virtual DeclId_t GetFunctionWithValues(ClassInfo_t *cl, const char* method, const char* params, Bool_t objectIsConst = kFALSE) = 0;
308  virtual DeclId_t GetFunctionTemplate(ClassInfo_t *cl, const char *funcname) = 0;
309  virtual void GetFunctionOverloads(ClassInfo_t *cl, const char *funcname, std::vector<DeclId_t>& res) const = 0;
310  virtual void LoadFunctionTemplates(TClass* cl) const = 0;
311  virtual std::vector<std::string> GetUsingNamespaces(ClassInfo_t *cl) const = 0;
312 
313  // CallFunc interface
314  virtual void CallFunc_Delete(CallFunc_t * /* func */) const {;}
315  virtual void CallFunc_Exec(CallFunc_t * /* func */, void * /* address */) const {;}
316  virtual void CallFunc_Exec(CallFunc_t * /* func */, void * /* address */, TInterpreterValue& /* val */) const {;}
317  virtual void CallFunc_ExecWithReturn(CallFunc_t * /* func */, void * /* address */, void * /* ret */) const {;}
318  virtual void CallFunc_ExecWithArgsAndReturn(CallFunc_t * /* func */, void * /* address */, const void* /* args */ [] = 0, int /*nargs*/ = 0, void * /* ret */ = 0) const {}
319  virtual Long_t CallFunc_ExecInt(CallFunc_t * /* func */, void * /* address */) const {return 0;}
320  virtual Long64_t CallFunc_ExecInt64(CallFunc_t * /* func */, void * /* address */) const {return 0;}
321  virtual Double_t CallFunc_ExecDouble(CallFunc_t * /* func */, void * /* address */) const {return 0;}
322  virtual CallFunc_t *CallFunc_Factory() const {return 0;}
323  virtual CallFunc_t *CallFunc_FactoryCopy(CallFunc_t * /* func */) const {return 0;}
324  virtual MethodInfo_t *CallFunc_FactoryMethod(CallFunc_t * /* func */) const {return 0;}
325  virtual void CallFunc_IgnoreExtraArgs(CallFunc_t * /*func */, bool /*ignore*/) const {;}
326  virtual void CallFunc_Init(CallFunc_t * /* func */) const {;}
327  virtual Bool_t CallFunc_IsValid(CallFunc_t * /* func */) const {return 0;}
328  virtual CallFuncIFacePtr_t CallFunc_IFacePtr(CallFunc_t * /* func */) const {return CallFuncIFacePtr_t();}
329  virtual void CallFunc_ResetArg(CallFunc_t * /* func */) const {;}
330  virtual void CallFunc_SetArgArray(CallFunc_t * /* func */, Long_t * /* paramArr */, Int_t /* nparam */) const {;}
331  virtual void CallFunc_SetArgs(CallFunc_t * /* func */, const char * /* param */) const {;}
332 
333  virtual void CallFunc_SetArg(CallFunc_t * /*func */, Long_t /* param */) const = 0;
334  virtual void CallFunc_SetArg(CallFunc_t * /*func */, ULong_t /* param */) const = 0;
335  virtual void CallFunc_SetArg(CallFunc_t * /* func */, Float_t /* param */) const = 0;
336  virtual void CallFunc_SetArg(CallFunc_t * /* func */, Double_t /* param */) const = 0;
337  virtual void CallFunc_SetArg(CallFunc_t * /* func */, Long64_t /* param */) const = 0;
338  virtual void CallFunc_SetArg(CallFunc_t * /* func */, ULong64_t /* param */) const = 0;
339 
340  void CallFunc_SetArg(CallFunc_t * func, Char_t param) const { CallFunc_SetArg(func,(Long_t)param); }
341  void CallFunc_SetArg(CallFunc_t * func, Short_t param) const { CallFunc_SetArg(func,(Long_t)param); }
342  void CallFunc_SetArg(CallFunc_t * func, Int_t param) const { CallFunc_SetArg(func,(Long_t)param); }
343 
344  void CallFunc_SetArg(CallFunc_t * func, UChar_t param) const { CallFunc_SetArg(func,(ULong_t)param); }
345  void CallFunc_SetArg(CallFunc_t * func, UShort_t param) const { CallFunc_SetArg(func,(ULong_t)param); }
346  void CallFunc_SetArg(CallFunc_t * func, UInt_t param) const { CallFunc_SetArg(func,(ULong_t)param); }
347 
348  template <typename T>
349  void CallFunc_SetArgRef(CallFunc_t * func, T &param) const { CallFunc_SetArg(func,(ULong_t)&param); }
350 
351  void CallFunc_SetArg(CallFunc_t *func, void *arg)
352  {
353  CallFunc_SetArg(func,(Long_t) arg);
354  }
355 
356  template <typename T>
357  void CallFunc_SetArg(CallFunc_t *func, const T *arg)
358  {
359  CallFunc_SetArg(func,(Long_t) arg);
360  }
361 
362  void CallFunc_SetArgImpl(CallFunc_t * /* func */)
363  {
364  }
365 
366  template <typename U>
367  void CallFunc_SetArgImpl(CallFunc_t *func, const U& head)
368  {
369  CallFunc_SetArg(func, head);
370  }
371 
372  template <typename U, typename... T>
373  void CallFunc_SetArgImpl(CallFunc_t *func, const U& head, const T&... tail)
374  {
375  CallFunc_SetArg(func, head);
376  CallFunc_SetArgImpl(func, tail...);
377  }
378 
379  template <typename... T>
380  void CallFunc_SetArguments(CallFunc_t *func, const T&... args)
381  {
383 
384  CallFunc_ResetArg(func);
385  CallFunc_SetArgImpl(func,args...);
386  }
387 
388  virtual void CallFunc_SetFunc(CallFunc_t * /* func */, ClassInfo_t * /* info */, const char * /* method */, const char * /* params */, bool /* objectIsConst */, Long_t * /* Offset */) const {;}
389  virtual void CallFunc_SetFunc(CallFunc_t * /* func */, ClassInfo_t * /* info */, const char * /* method */, const char * /* params */, Long_t * /* Offset */) const {;}
390  virtual void CallFunc_SetFunc(CallFunc_t * /* func */, MethodInfo_t * /* info */) const {;}
391  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 {;}
392  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 {;}
393  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 = 0;
394  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 = 0;
395 
396  virtual std::string CallFunc_GetWrapperCode(CallFunc_t *func) const = 0;
397 
398  // ClassInfo interface
399  virtual Bool_t ClassInfo_Contains(ClassInfo_t *info, DeclId_t decl) const = 0;
400  virtual Long_t ClassInfo_ClassProperty(ClassInfo_t * /* info */) const {return 0;}
401  virtual void ClassInfo_Delete(ClassInfo_t * /* info */) const {;}
402  virtual void ClassInfo_Delete(ClassInfo_t * /* info */, void * /* arena */) const {;}
403  virtual void ClassInfo_DeleteArray(ClassInfo_t * /* info */, void * /* arena */, bool /* dtorOnly */) const {;}
404  virtual void ClassInfo_Destruct(ClassInfo_t * /* info */, void * /* arena */) const {;}
405  virtual ClassInfo_t *ClassInfo_Factory(Bool_t /*all*/ = kTRUE) const = 0;
406  virtual ClassInfo_t *ClassInfo_Factory(ClassInfo_t * /* cl */) const = 0;
407  virtual ClassInfo_t *ClassInfo_Factory(const char * /* name */) const = 0;
408  virtual ClassInfo_t *ClassInfo_Factory(DeclId_t declid) const = 0;
409  virtual Long_t ClassInfo_GetBaseOffset(ClassInfo_t* /* fromDerived */,
410  ClassInfo_t* /* toBase */, void* /* address */ = 0, bool /*isderived*/ = true) const {return 0;}
411  virtual int ClassInfo_GetMethodNArg(ClassInfo_t * /* info */, const char * /* method */,const char * /* proto */, Bool_t /* objectIsConst */ = false, ROOT::EFunctionMatchMode /* mode */ = ROOT::kConversionMatch) const {return 0;}
412  virtual Bool_t ClassInfo_HasDefaultConstructor(ClassInfo_t * /* info */, Bool_t = kFALSE) const {return kFALSE;}
413  virtual Bool_t ClassInfo_HasMethod(ClassInfo_t * /* info */, const char * /* name */) const {return kFALSE;}
414  virtual void ClassInfo_Init(ClassInfo_t * /* info */, const char * /* funcname */) const {;}
415  virtual void ClassInfo_Init(ClassInfo_t * /* info */, int /* tagnum */) const {;}
416  virtual Bool_t ClassInfo_IsBase(ClassInfo_t * /* info */, const char * /* name */) const {return 0;}
417  virtual Bool_t ClassInfo_IsEnum(const char * /* name */) const {return 0;}
418  virtual Bool_t ClassInfo_IsScopedEnum(ClassInfo_t * /* info */) const {return 0;}
419  virtual EDataType ClassInfo_GetUnderlyingType(ClassInfo_t * /* info */) const {return kNumDataTypes;}
420  virtual Bool_t ClassInfo_IsLoaded(ClassInfo_t * /* info */) const {return 0;}
421  virtual Bool_t ClassInfo_IsValid(ClassInfo_t * /* info */) const {return 0;}
422  virtual Bool_t ClassInfo_IsValidMethod(ClassInfo_t * /* info */, const char * /* method */,const char * /* proto */, Long_t * /* offset */, ROOT::EFunctionMatchMode /* mode */ = ROOT::kConversionMatch) const {return 0;}
423  virtual Bool_t ClassInfo_IsValidMethod(ClassInfo_t * /* info */, const char * /* method */,const char * /* proto */, Bool_t /* objectIsConst */, Long_t * /* offset */, ROOT::EFunctionMatchMode /* mode */ = ROOT::kConversionMatch) const {return 0;}
424  virtual int ClassInfo_Next(ClassInfo_t * /* info */) const {return 0;}
425  virtual void *ClassInfo_New(ClassInfo_t * /* info */) const {return 0;}
426  virtual void *ClassInfo_New(ClassInfo_t * /* info */, int /* n */) const {return 0;}
427  virtual void *ClassInfo_New(ClassInfo_t * /* info */, int /* n */, void * /* arena */) const {return 0;}
428  virtual void *ClassInfo_New(ClassInfo_t * /* info */, void * /* arena */) const {return 0;}
429  virtual Long_t ClassInfo_Property(ClassInfo_t * /* info */) const {return 0;}
430  virtual int ClassInfo_Size(ClassInfo_t * /* info */) const {return 0;}
431  virtual Long_t ClassInfo_Tagnum(ClassInfo_t * /* info */) const {return 0;}
432  virtual const char *ClassInfo_FileName(ClassInfo_t * /* info */) const {return 0;}
433  virtual const char *ClassInfo_FullName(ClassInfo_t * /* info */) const {return 0;}
434  virtual const char *ClassInfo_Name(ClassInfo_t * /* info */) const {return 0;}
435  virtual const char *ClassInfo_Title(ClassInfo_t * /* info */) const {return 0;}
436  virtual const char *ClassInfo_TmpltName(ClassInfo_t * /* info */) const {return 0;}
437 
438 
439  // BaseClassInfo interface
440  virtual void BaseClassInfo_Delete(BaseClassInfo_t * /* bcinfo */) const {;}
441  virtual BaseClassInfo_t *BaseClassInfo_Factory(ClassInfo_t * /* info */) const {return 0;}
442  virtual BaseClassInfo_t *BaseClassInfo_Factory(ClassInfo_t* /* derived */,
443  ClassInfo_t* /* base */) const {return 0;}
444  virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */) const {return 0;}
445  virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */, int /* onlyDirect */) const {return 0;}
446  virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t * /* toBaseClassInfo */, void* /* address */ = 0 /*default for non-virtual*/, bool /*isderived*/ = true /*default for non-virtual*/) const {return 0;}
447  virtual Long_t BaseClassInfo_Property(BaseClassInfo_t * /* bcinfo */) const {return 0;}
448  virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t * /* bcinfo */) const {return 0;}
449  virtual ClassInfo_t*BaseClassInfo_ClassInfo(BaseClassInfo_t * /* bcinfo */) const = 0;
450  virtual const char *BaseClassInfo_FullName(BaseClassInfo_t * /* bcinfo */) const {return 0;}
451  virtual const char *BaseClassInfo_Name(BaseClassInfo_t * /* bcinfo */) const {return 0;}
452  virtual const char *BaseClassInfo_TmpltName(BaseClassInfo_t * /* bcinfo */) const {return 0;}
453 
454  // DataMemberInfo interface
455  virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t * /* dminfo */) const {return 0;}
456  virtual void DataMemberInfo_Delete(DataMemberInfo_t * /* dminfo */) const {;}
457  virtual DataMemberInfo_t *DataMemberInfo_Factory(ClassInfo_t * /* clinfo */ = 0) const {return 0;}
458  virtual DataMemberInfo_t *DataMemberInfo_Factory(DeclId_t declid, ClassInfo_t* clinfo) const = 0;
459  virtual DataMemberInfo_t *DataMemberInfo_FactoryCopy(DataMemberInfo_t * /* dminfo */) const {return 0;}
460  virtual Bool_t DataMemberInfo_IsValid(DataMemberInfo_t * /* dminfo */) const {return 0;}
461  virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t * /* dminfo */, Int_t /* dim */) const {return 0;}
462  virtual int DataMemberInfo_Next(DataMemberInfo_t * /* dminfo */) const {return 0;}
463  virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t * /* dminfo */) const {return 0;}
464  virtual Long_t DataMemberInfo_Property(DataMemberInfo_t * /* dminfo */) const {return 0;}
465  virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t * /* dminfo */) const {return 0;}
466  virtual int DataMemberInfo_TypeSize(DataMemberInfo_t * /* dminfo */) const {return 0;}
467  virtual const char *DataMemberInfo_TypeName(DataMemberInfo_t * /* dminfo */) const {return 0;}
468  virtual const char *DataMemberInfo_TypeTrueName(DataMemberInfo_t * /* dminfo */) const {return 0;}
469  virtual const char *DataMemberInfo_Name(DataMemberInfo_t * /* dminfo */) const {return 0;}
470  virtual const char *DataMemberInfo_Title(DataMemberInfo_t * /* dminfo */) const {return 0;}
471  virtual const char *DataMemberInfo_ValidArrayIndex(DataMemberInfo_t * /* dminfo */) const {return 0;}
472 
473  // Function Template interface
474  virtual void FuncTempInfo_Delete(FuncTempInfo_t * /* ft_info */) const = 0;
475  virtual FuncTempInfo_t *FuncTempInfo_Factory(DeclId_t declid) const = 0;
476  virtual FuncTempInfo_t *FuncTempInfo_FactoryCopy(FuncTempInfo_t * /* ft_info */) const = 0;
477  virtual Bool_t FuncTempInfo_IsValid(FuncTempInfo_t * /* ft_info */) const = 0;
478  virtual UInt_t FuncTempInfo_TemplateNargs(FuncTempInfo_t * /* ft_info */) const = 0;
479  virtual UInt_t FuncTempInfo_TemplateMinReqArgs(FuncTempInfo_t * /* ft_info */) const = 0;
480  virtual Long_t FuncTempInfo_Property(FuncTempInfo_t * /* ft_info */) const = 0;
481  virtual Long_t FuncTempInfo_ExtraProperty(FuncTempInfo_t * /* ft_info */) const = 0;
482  virtual void FuncTempInfo_Name(FuncTempInfo_t * /* ft_info */, TString &name) const = 0;
483  virtual void FuncTempInfo_Title(FuncTempInfo_t * /* ft_info */, TString &title) const = 0;
484 
485  // MethodInfo interface
486  virtual void MethodInfo_CreateSignature(MethodInfo_t * /* minfo */, TString & /* signature */) const {;}
487  virtual void MethodInfo_Delete(MethodInfo_t * /* minfo */) const {;}
488  virtual MethodInfo_t *MethodInfo_Factory() const {return 0;}
489  virtual MethodInfo_t *MethodInfo_Factory(ClassInfo_t * /*clinfo*/) const {return 0;}
490  virtual MethodInfo_t *MethodInfo_Factory(DeclId_t declid) const = 0;
491  virtual MethodInfo_t *MethodInfo_FactoryCopy(MethodInfo_t * /* minfo */) const {return 0;}
492  virtual void *MethodInfo_InterfaceMethod(MethodInfo_t * /* minfo */) const {return 0;}
493  virtual Bool_t MethodInfo_IsValid(MethodInfo_t * /* minfo */) const {return 0;}
494  virtual int MethodInfo_NArg(MethodInfo_t * /* minfo */) const {return 0;}
495  virtual int MethodInfo_NDefaultArg(MethodInfo_t * /* minfo */) const {return 0;}
496  virtual int MethodInfo_Next(MethodInfo_t * /* minfo */) const {return 0;}
497  virtual Long_t MethodInfo_Property(MethodInfo_t * /* minfo */) const = 0;
498  virtual Long_t MethodInfo_ExtraProperty(MethodInfo_t * /* minfo */) const = 0;
499  virtual TypeInfo_t *MethodInfo_Type(MethodInfo_t * /* minfo */) const {return 0;}
500  virtual EReturnType MethodInfo_MethodCallReturnType(MethodInfo_t* minfo) const = 0;
501  virtual const char *MethodInfo_GetMangledName(MethodInfo_t * /* minfo */) const {return 0;}
502  virtual const char *MethodInfo_GetPrototype(MethodInfo_t * /* minfo */) const {return 0;}
503  virtual const char *MethodInfo_Name(MethodInfo_t * /* minfo */) const {return 0;}
504  virtual const char *MethodInfo_TypeName(MethodInfo_t * /* minfo */) const {return 0;}
505  virtual std::string MethodInfo_TypeNormalizedName(MethodInfo_t * /* minfo */) const {return "";}
506  virtual const char *MethodInfo_Title(MethodInfo_t * /* minfo */) const {return 0;}
507 
508  // MethodArgInfo interface
509  virtual void MethodArgInfo_Delete(MethodArgInfo_t * /* marginfo */) const {;}
510  virtual MethodArgInfo_t *MethodArgInfo_Factory() const {return 0;}
511  virtual MethodArgInfo_t *MethodArgInfo_Factory(MethodInfo_t * /*minfo*/) const {return 0;}
512  virtual MethodArgInfo_t *MethodArgInfo_FactoryCopy(MethodArgInfo_t * /* marginfo */) const {return 0;}
513  virtual Bool_t MethodArgInfo_IsValid(MethodArgInfo_t * /* marginfo */) const {return 0;}
514  virtual int MethodArgInfo_Next(MethodArgInfo_t * /* marginfo */) const {return 0;}
515  virtual Long_t MethodArgInfo_Property(MethodArgInfo_t * /* marginfo */) const {return 0;}
516  virtual const char *MethodArgInfo_DefaultValue(MethodArgInfo_t * /* marginfo */) const {return 0;}
517  virtual const char *MethodArgInfo_Name(MethodArgInfo_t * /* marginfo */) const {return 0;}
518  virtual const char *MethodArgInfo_TypeName(MethodArgInfo_t * /* marginfo */) const {return 0;}
519  virtual std::string MethodArgInfo_TypeNormalizedName(MethodArgInfo_t * /* marginfo */) const = 0;
520 
521 
522  // TypeInfo interface
523  virtual void TypeInfo_Delete(TypeInfo_t * /* tinfo */) const {;}
524  virtual TypeInfo_t *TypeInfo_Factory() const {return 0;}
525  virtual TypeInfo_t *TypeInfo_Factory(const char* /* name */) const {return 0;}
526  virtual TypeInfo_t *TypeInfo_FactoryCopy(TypeInfo_t * /* tinfo */) const {return 0;}
527  virtual void TypeInfo_Init(TypeInfo_t * /* tinfo */, const char * /* funcname */) const {;}
528  virtual Bool_t TypeInfo_IsValid(TypeInfo_t * /* tinfo */) const {return 0;}
529  virtual const char *TypeInfo_Name(TypeInfo_t * /* info */) const {return 0;}
530  virtual Long_t TypeInfo_Property(TypeInfo_t * /* tinfo */) const {return 0;}
531  virtual int TypeInfo_RefType(TypeInfo_t * /* tinfo */) const {return 0;}
532  virtual int TypeInfo_Size(TypeInfo_t * /* tinfo */) const {return 0;}
533  virtual const char *TypeInfo_TrueName(TypeInfo_t * /* tinfo */) const {return 0;}
534 
535 
536  // TypedefInfo interface
537  virtual void TypedefInfo_Delete(TypedefInfo_t * /* tinfo */) const {;}
538  virtual TypedefInfo_t *TypedefInfo_Factory() const {return 0;}
539  virtual TypedefInfo_t *TypedefInfo_Factory(const char *) const {return 0;}
540  virtual TypedefInfo_t *TypedefInfo_FactoryCopy(TypedefInfo_t * /* tinfo */) const {return 0;}
541  virtual void TypedefInfo_Init(TypedefInfo_t * /* tinfo */, const char * /* funcname */) const {;}
542  virtual Bool_t TypedefInfo_IsValid(TypedefInfo_t * /* tinfo */) const {return 0;}
543  virtual int TypedefInfo_Next(TypedefInfo_t* /*tinfo*/) const {return 0;}
544  virtual Long_t TypedefInfo_Property(TypedefInfo_t * /* tinfo */) const {return 0;}
545  virtual int TypedefInfo_Size(TypedefInfo_t * /* tinfo */) const {return 0;}
546  virtual const char *TypedefInfo_TrueName(TypedefInfo_t * /* tinfo */) const {return 0;}
547  virtual const char *TypedefInfo_Name(TypedefInfo_t * /* tinfo */) const {return 0;}
548  virtual const char *TypedefInfo_Title(TypedefInfo_t * /* tinfo */) const {return 0;}
549 
550  static TInterpreter *Instance();
551 
552  ClassDef(TInterpreter,0) //ABC defining interface to generic interpreter
553 };
554 
555 
556 typedef TInterpreter *CreateInterpreter_t(void* shlibHandle, const char* argv[]);
558 
559 #ifndef __CINT__
560 #define gInterpreter (TInterpreter::Instance())
562 #endif
563 
565  fLockGuard(mutex)
566 {
567  if (gCoreMutex)
569 }
571 {
572  if (gCoreMutex)
574 }
575 
576 #endif
TInterpreter::MethodInfo_NDefaultArg
virtual int MethodInfo_NDefaultArg(MethodInfo_t *) const
Definition: TInterpreter.h:495
TInterpreter::IsLoaded
virtual Bool_t IsLoaded(const char *filename) const =0
TInterpreter::CallFuncIFacePtr_t::Dtor_t
void(* Dtor_t)(void *, unsigned long, int)
Definition: TInterpreter.h:96
TInterpreter::GetFunctionTemplate
virtual DeclId_t GetFunctionTemplate(ClassInfo_t *cl, const char *funcname)=0
TInterpreter::BaseClassInfo_TmpltName
virtual const char * BaseClassInfo_TmpltName(BaseClassInfo_t *) const
Definition: TInterpreter.h:452
TInterpreter::CreateListOfMethods
virtual void CreateListOfMethods(TClass *cl) const =0
TInterpreter::MethodArgInfo_TypeName
virtual const char * MethodArgInfo_TypeName(MethodArgInfo_t *) const
Definition: TInterpreter.h:518
TInterpreter::ClassInfo_Factory
virtual ClassInfo_t * ClassInfo_Factory(DeclId_t declid) const =0
TInterpreter::ShutDown
virtual void ShutDown()=0
TInterpreter::MethodArgInfo_FactoryCopy
virtual MethodArgInfo_t * MethodArgInfo_FactoryCopy(MethodArgInfo_t *) const
Definition: TInterpreter.h:512
m
auto * m
Definition: textangle.C:8
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, void *arg)
Definition: TInterpreter.h:351
ROOT::Internal::InterpreterMutexRegistrationRAII::fLockGuard
TLockGuard fLockGuard
Definition: TInterpreter.h:57
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, Char_t param) const
Definition: TInterpreter.h:340
TInterpreter::DataMemberInfo_ArrayDim
virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t *) const
Definition: TInterpreter.h:455
TMemberInspector
Abstract base class for accessing the data-members of a class.
Definition: TMemberInspector.h:31
TInterpreter::MethodArgInfo_Factory
virtual MethodArgInfo_t * MethodArgInfo_Factory(MethodInfo_t *) const
Definition: TInterpreter.h:511
TInterpreter::MethodInfo_Type
virtual TypeInfo_t * MethodInfo_Type(MethodInfo_t *) const
Definition: TInterpreter.h:499
TInterpreter::CallFuncIFacePtr_t::CallFuncIFacePtr_t
CallFuncIFacePtr_t()
Definition: TInterpreter.h:98
TInterpreter::FuncTempInfo_Factory
virtual FuncTempInfo_t * FuncTempInfo_Factory(DeclId_t declid) const =0
TInterpreter::CreateTemporary
TInterpreterValue * CreateTemporary() const
The created temporary must be deleted by the caller.
Definition: TInterpreter.h:275
kTRUE
const Bool_t kTRUE
Definition: RtypesCore.h:91
TInterpreter::ClassInfo_IsBase
virtual Bool_t ClassInfo_IsBase(ClassInfo_t *, const char *) const
Definition: TInterpreter.h:416
TInterpreter::UpdateListOfGlobals
virtual void UpdateListOfGlobals()=0
e
#define e(i)
Definition: RSha256.hxx:103
TInterpreter::MethodInfo_InterfaceMethod
virtual void * MethodInfo_InterfaceMethod(MethodInfo_t *) const
Definition: TInterpreter.h:492
TLockGuard
Definition: TVirtualMutex.h:67
TInterpreter::Instance
static TInterpreter * Instance()
returns gInterpreter global
Definition: TInterpreter.cxx:58
TInterpreter::kRecoverable
@ kRecoverable
Definition: TInterpreter.h:78
TObjArray
An array of TObjects.
Definition: TObjArray.h:37
TInterpreter::ClassInfo_GetUnderlyingType
virtual EDataType ClassInfo_GetUnderlyingType(ClassInfo_t *) const
Definition: TInterpreter.h:419
TInterpreter::ResetGlobals
virtual void ResetGlobals()=0
TInterpreter::SetAutoLoadCallBack
virtual void * SetAutoLoadCallBack(void *)
Definition: TInterpreter.h:144
TInterpreter::MethodInfo_Name
virtual const char * MethodInfo_Name(MethodInfo_t *) const
Definition: TInterpreter.h:503
DestroyInterpreter_t
void * DestroyInterpreter_t(TInterpreter *)
Definition: TInterpreter.h:557
TInterpreter::GetCurrentMacroName
virtual const char * GetCurrentMacroName() const
Definition: TInterpreter.h:259
TInterpreter::AutoParse
virtual Int_t AutoParse(const char *cls)=0
TInterpreter::CallFuncIFacePtr_t::CallFuncIFacePtr_t
CallFuncIFacePtr_t(Generic_t func)
Definition: TInterpreter.h:100
TInterpreter::CallFunc_SetArgImpl
void CallFunc_SetArgImpl(CallFunc_t *)
Definition: TInterpreter.h:362
TInterpreter::RegisterPrebuiltModulePath
virtual bool RegisterPrebuiltModulePath(const std::string &FullPath, const std::string &ModuleMapName="module.modulemap") const =0
TInterpreter::CallFunc_IgnoreExtraArgs
virtual void CallFunc_IgnoreExtraArgs(CallFunc_t *, bool) const
Definition: TInterpreter.h:325
TInterpreter::SuspendAutoLoadingRAII
Definition: TInterpreter.h:124
TInterpreter::kKnown
@ kKnown
Definition: TInterpreter.h:217
ROOT::kConversionMatch
@ kConversionMatch
Definition: TDictionary.h:157
TInterpreter::AddAvailableIndentifiers
virtual void AddAvailableIndentifiers(TSeqCollection &)=0
TInterpreter::Load
virtual Int_t Load(const char *filenam, Bool_t system=kFALSE)=0
TInterpreter::kUnknown
@ kUnknown
Definition: TInterpreter.h:216
TInterpreter::CallFuncIFacePtr_t::kCtor
@ kCtor
Definition: TInterpreter.h:90
TInterpreter::TypeInfo_Property
virtual Long_t TypeInfo_Property(TypeInfo_t *) const
Definition: TInterpreter.h:530
TInterpreter::ClassInfo_New
virtual void * ClassInfo_New(ClassInfo_t *, int) const
Definition: TInterpreter.h:426
TInterpreter::SetProcessLineLock
virtual void SetProcessLineLock(Bool_t lock=kTRUE)=0
UShort_t
unsigned short UShort_t
Definition: RtypesCore.h:40
TInterpreter::ClassInfo_Init
virtual void ClassInfo_Init(ClassInfo_t *, int) const
Definition: TInterpreter.h:415
TInterpreter::DataMemberInfo_TypeProperty
virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t *) const
Definition: TInterpreter.h:465
TInterpreter::MethodInfo_TypeName
virtual const char * MethodInfo_TypeName(MethodInfo_t *) const
Definition: TInterpreter.h:504
TInterpreter::TypeInfo_Size
virtual int TypeInfo_Size(TypeInfo_t *) const
Definition: TInterpreter.h:532
TInterpreter::CallFuncIFacePtr_t::fGeneric
Generic_t fGeneric
Definition: TInterpreter.h:109
TInterpreter::ClassInfo_IsValidMethod
virtual Bool_t ClassInfo_IsValidMethod(ClassInfo_t *, const char *, const char *, Long_t *, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
Definition: TInterpreter.h:422
TInterpreter::MethodArgInfo_Next
virtual int MethodArgInfo_Next(MethodArgInfo_t *) const
Definition: TInterpreter.h:514
TInterpreter::LoadFile
virtual int LoadFile(const char *) const
Definition: TInterpreter.h:261
TInterpreter::DataMemberInfo_Offset
virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t *) const
Definition: TInterpreter.h:463
TInterpreter::TypedefInfo_Size
virtual int TypedefInfo_Size(TypedefInfo_t *) const
Definition: TInterpreter.h:545
TInterpreter::LoadFunctionTemplates
virtual void LoadFunctionTemplates(TClass *cl) const =0
kNumDataTypes
@ kNumDataTypes
Definition: TDataType.h:40
TInterpreter::MethodInfo_GetMangledName
virtual const char * MethodInfo_GetMangledName(MethodInfo_t *) const
Definition: TInterpreter.h:501
TInterpreter::CallFunc_ExecDouble
virtual Double_t CallFunc_ExecDouble(CallFunc_t *, void *) const
Definition: TInterpreter.h:321
TInterpreter::MethodArgInfo_Property
virtual Long_t MethodArgInfo_Property(MethodArgInfo_t *) const
Definition: TInterpreter.h:515
TInterpreter::TypeInfo_Init
virtual void TypeInfo_Init(TypeInfo_t *, const char *) const
Definition: TInterpreter.h:527
TNamed.h
Long64_t
long long Long64_t
Definition: RtypesCore.h:73
TInterpreter::RescanLibraryMap
virtual Int_t RescanLibraryMap()=0
output
static void output(int code)
Definition: gifencode.c:226
TInterpreter::BaseClassInfo_Delete
virtual void BaseClassInfo_Delete(BaseClassInfo_t *) const
Definition: TInterpreter.h:440
TInterpreter::ClassInfo_IsValidMethod
virtual Bool_t ClassInfo_IsValidMethod(ClassInfo_t *, const char *, const char *, Bool_t, Long_t *, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
Definition: TInterpreter.h:423
TInterpreterValue.h
TInterpreter::AutoLoad
virtual Int_t AutoLoad(const std::type_info &typeinfo, Bool_t knowDictNotLoaded=kFALSE)=0
TInterpreter::UnRegisterTClassUpdate
virtual void UnRegisterTClassUpdate(const TClass *oldcl)=0
TInterpreter::SetAlloclockfunc
virtual void SetAlloclockfunc(void(*)()) const
Definition: TInterpreter.h:264
TInterpreter::CallFunc_SetFuncProto
virtual void CallFunc_SetFuncProto(CallFunc_t *, ClassInfo_t *, const char *, const char *, bool, Long_t *, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
Definition: TInterpreter.h:392
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, Double_t) const =0
TInterpreter::kWithClassDefInline
@ kWithClassDefInline
Definition: TInterpreter.h:218
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(CallFunc_t *info) const =0
TInterpreter::MethodInfo_ExtraProperty
virtual Long_t MethodInfo_ExtraProperty(MethodInfo_t *) const =0
TInterpreter::ExecuteMacro
virtual Long_t ExecuteMacro(const char *filename, EErrorCode *error=0)=0
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, UShort_t param) const
Definition: TInterpreter.h:345
TInterpreter::GetSTLIncludePath
virtual const char * GetSTLIncludePath() const
Definition: TInterpreter.h:165
TInterpreter::CallFuncIFacePtr_t::fKind
EKind fKind
Definition: TInterpreter.h:107
TInterpreter::GetInterfaceMethod
virtual void * GetInterfaceMethod(TClass *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)=0
TInterpreter::UnloadAllSharedLibraryMaps
virtual Int_t UnloadAllSharedLibraryMaps()=0
Float_t
float Float_t
Definition: RtypesCore.h:57
TInterpreter::SetSuspendAutoParsing
virtual Bool_t SetSuspendAutoParsing(Bool_t value)=0
TInterpreter::ClassInfo_GetBaseOffset
virtual Long_t ClassInfo_GetBaseOffset(ClassInfo_t *, ClassInfo_t *, void *=0, bool=true) const
Definition: TInterpreter.h:409
TVirtualRWMutex.h
TGeant4Unit::s
static constexpr double s
Definition: TGeant4SystemOfUnits.h:162
TInterpreter::MethodInfo_Factory
virtual MethodInfo_t * MethodInfo_Factory(DeclId_t declid) const =0
TInterpreter::MethodInfo_GetPrototype
virtual const char * MethodInfo_GetPrototype(MethodInfo_t *) const
Definition: TInterpreter.h:502
TInterpreter::CodeComplete
virtual void CodeComplete(const std::string &, size_t &, std::vector< std::string > &)
Definition: TInterpreter.h:279
TInterpreter::IsLibraryLoaded
virtual Bool_t IsLibraryLoaded(const char *libname) const =0
TInterpreter::CallFuncIFacePtr_t::kDtor
@ kDtor
Definition: TInterpreter.h:91
ROOT::Internal::InterpreterMutexRegistrationRAII
Definition: TInterpreter.h:56
TInterpreter::MethodInfo_Factory
virtual MethodInfo_t * MethodInfo_Factory(ClassInfo_t *) const
Definition: TInterpreter.h:489
TInterpreter::GetInterpreterStateMarker
virtual ULong64_t GetInterpreterStateMarker() const =0
TInterpreter::GetMapfile
virtual TEnv * GetMapfile() const
Definition: TInterpreter.h:155
RooFit::Offset
RooCmdArg Offset(Bool_t flag=kTRUE)
Definition: RooGlobalFunc.cxx:212
TInterpreter::TypedefInfo_Title
virtual const char * TypedefInfo_Title(TypedefInfo_t *) const
Definition: TInterpreter.h:548
TInterpreter::~TInterpreter
virtual ~TInterpreter()
Definition: TInterpreter.h:141
TInterpreter::CallFunc_Factory
virtual CallFunc_t * CallFunc_Factory() const
Definition: TInterpreter.h:322
TVirtualMutex
This class implements a mutex interface.
Definition: TVirtualMutex.h:32
TInterpreter::CallFunc_SetFuncProto
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 =0
TInterpreter::CallFunc_SetArgArray
virtual void CallFunc_SetArgArray(CallFunc_t *, Long_t *, Int_t) const
Definition: TInterpreter.h:330
TInterpreter::BaseClassInfo_Next
virtual int BaseClassInfo_Next(BaseClassInfo_t *) const
Definition: TInterpreter.h:444
TInterpreter::CallFunc_SetFunc
virtual void CallFunc_SetFunc(CallFunc_t *, ClassInfo_t *, const char *, const char *, bool, Long_t *) const
Definition: TInterpreter.h:388
TInterpreter::MethodInfo_Title
virtual const char * MethodInfo_Title(MethodInfo_t *) const
Definition: TInterpreter.h:506
TInterpreter::MethodInfo_NArg
virtual int MethodInfo_NArg(MethodInfo_t *) const
Definition: TInterpreter.h:494
TInterpreter::GetPrompt
virtual char * GetPrompt()=0
TInterpreter::GetIncludePath
virtual const char * GetIncludePath()=0
TInterpreter::TypeInfo_TrueName
virtual const char * TypeInfo_TrueName(TypeInfo_t *) const
Definition: TInterpreter.h:533
TInterpreter::DeclId_t
TDictionary::DeclId_t DeclId_t
Definition: TInterpreter.h:288
TInterpreter::IsProcessLineLocked
virtual Bool_t IsProcessLineLocked() const =0
TInterpreter::ClassInfo_Tagnum
virtual Long_t ClassInfo_Tagnum(ClassInfo_t *) const
Definition: TInterpreter.h:431
TInterpreter::BaseClassInfo_Property
virtual Long_t BaseClassInfo_Property(BaseClassInfo_t *) const
Definition: TInterpreter.h:447
TInterpreter::BaseClassInfo_FullName
virtual const char * BaseClassInfo_FullName(BaseClassInfo_t *) const
Definition: TInterpreter.h:450
TInterpreter::CallFuncIFacePtr_t::kGeneric
@ kGeneric
Definition: TInterpreter.h:89
TInterpreter::EErrorCode
EErrorCode
Definition: TInterpreter.h:76
long
long
Definition: Converters.cxx:858
ROOT::gCoreMutex
R__EXTERN TVirtualRWMutex * gCoreMutex
Definition: TVirtualRWMutex.h:32
TInterpreter::DataMemberInfo_ValidArrayIndex
virtual const char * DataMemberInfo_ValidArrayIndex(DataMemberInfo_t *) const
Definition: TInterpreter.h:471
TInterpreter::MethodCallReturnType
virtual EReturnType MethodCallReturnType(TFunction *func) const =0
TInterpreter::GetTopLevelMacroName
virtual const char * GetTopLevelMacroName() const
Definition: TInterpreter.h:258
TInterpreter::FuncTempInfo_Name
virtual void FuncTempInfo_Name(FuncTempInfo_t *, TString &name) const =0
TInterpreter::TypedefInfo_Delete
virtual void TypedefInfo_Delete(TypedefInfo_t *) const
Definition: TInterpreter.h:537
TInterpreter::UnloadLibraryMap
virtual Int_t UnloadLibraryMap(const char *library)=0
TInterpreter::TypedefInfo_Factory
virtual TypedefInfo_t * TypedefInfo_Factory(const char *) const
Definition: TInterpreter.h:539
TInterpreter::kDangerous
@ kDangerous
Definition: TInterpreter.h:79
TInterpreter::ClearStack
virtual void ClearStack()=0
TString
Basic string class.
Definition: TString.h:136
TInterpreter::DeleteVariable
virtual Int_t DeleteVariable(const char *name)=0
TInterpreter::ClassInfo_Delete
virtual void ClassInfo_Delete(ClassInfo_t *) const
Definition: TInterpreter.h:401
TInterpreter::GetFunction
virtual DeclId_t GetFunction(ClassInfo_t *cl, const char *funcname)=0
TInterpreter::DataMemberInfo_MaxIndex
virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t *, Int_t) const
Definition: TInterpreter.h:461
TInterpreter::CreateListOfBaseClasses
virtual void CreateListOfBaseClasses(TClass *cl) const =0
TInterpreter::BaseClassInfo_ClassInfo
virtual ClassInfo_t * BaseClassInfo_ClassInfo(BaseClassInfo_t *) const =0
TInterpreter::CallFunc_Exec
virtual void CallFunc_Exec(CallFunc_t *, void *) const
Definition: TInterpreter.h:315
TInterpreter::DataMemberInfo_TypeName
virtual const char * DataMemberInfo_TypeName(DataMemberInfo_t *) const
Definition: TInterpreter.h:467
TInterpreter::ReloadAllSharedLibraryMaps
virtual Int_t ReloadAllSharedLibraryMaps()=0
TInterpreter::CallFunc_FactoryCopy
virtual CallFunc_t * CallFunc_FactoryCopy(CallFunc_t *) const
Definition: TInterpreter.h:323
TInterpreter::TypedefInfo_Factory
virtual TypedefInfo_t * TypedefInfo_Factory() const
Definition: TInterpreter.h:538
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, UChar_t param) const
Definition: TInterpreter.h:344
bool
TInterpreter::GetInterfaceMethodWithPrototype
virtual void * GetInterfaceMethodWithPrototype(TClass *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode=ROOT::kConversionMatch)=0
TInterpreter::CallFunc_SetArgImpl
void CallFunc_SetArgImpl(CallFunc_t *func, const U &head)
Definition: TInterpreter.h:367
TInterpreter::SuspendAutoLoadingRAII::fInterp
TInterpreter * fInterp
Definition: TInterpreter.h:125
TInterpreter::GenerateDictionary
virtual Int_t GenerateDictionary(const char *classes, const char *includes=0, const char *options=0)=0
TInterpreter::CallFuncIFacePtr_t::CallFuncIFacePtr_t
CallFuncIFacePtr_t(Dtor_t func)
Definition: TInterpreter.h:104
TInterpreter::CallFunc_ResetArg
virtual void CallFunc_ResetArg(CallFunc_t *) const
Definition: TInterpreter.h:329
TInterpreter::SetClassAutoparsing
virtual int SetClassAutoparsing(int)
Definition: TInterpreter.h:268
TInterpreter::Execute
virtual void Execute(const char *function, const char *params, int *error=0)=0
Execute method on this object with the given parameter string, e.g.
TInterpreter::GetEnum
virtual DeclId_t GetEnum(TClass *cl, const char *name) const =0
TInterpreter::LoadLibraryMap
virtual Int_t LoadLibraryMap(const char *rootmapfile=0)=0
TInterpreter::EReturnType::kDouble
@ kDouble
TInterpreter::BaseClassInfo_Tagnum
virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t *) const
Definition: TInterpreter.h:448
TInterpreter::TypeInfo_Factory
virtual TypeInfo_t * TypeInfo_Factory(const char *) const
Definition: TInterpreter.h:525
TInterpreter::SaveContext
virtual void SaveContext()=0
TInterpreter::MethodInfo_IsValid
virtual Bool_t MethodInfo_IsValid(MethodInfo_t *) const
Definition: TInterpreter.h:493
TInterpreter::TypeInfo_Factory
virtual TypeInfo_t * TypeInfo_Factory() const
Definition: TInterpreter.h:524
TInterpreter::CallFuncIFacePtr_t::Generic_t
void(* Generic_t)(void *, int, void **, void *)
Definition: TInterpreter.h:94
TInterpreter::SetAllocunlockfunc
virtual void SetAllocunlockfunc(void(*)()) const
Definition: TInterpreter.h:265
TDictionary.h
CreateInterpreter_t
TInterpreter * CreateInterpreter_t(void *shlibHandle, const char *argv[])
Definition: TInterpreter.h:556
TInterpreter::CallFunc_ExecInt
virtual Long_t CallFunc_ExecInt(CallFunc_t *, void *) const
Definition: TInterpreter.h:319
TInterpreter::UpdateListOfMethods
virtual void UpdateListOfMethods(TClass *cl) const =0
TInterpreter::FwdDeclArgsToKeepCollection_t
std::vector< std::pair< std::string, int > > FwdDeclArgsToKeepCollection_t
Definition: TInterpreter.h:137
TInterpreter::TypedefInfo_Next
virtual int TypedefInfo_Next(TypedefInfo_t *) const
Definition: TInterpreter.h:543
TInterpreter::ClassInfo_HasDefaultConstructor
virtual Bool_t ClassInfo_HasDefaultConstructor(ClassInfo_t *, Bool_t=kFALSE) const
Definition: TInterpreter.h:412
ROOT::TVirtualRWMutex
Definition: TVirtualRWMutex.h:39
TInterpreter::CallFuncIFacePtr_t
Definition: TInterpreter.h:86
TInterpreter::MethodArgInfo_Delete
virtual void MethodArgInfo_Delete(MethodArgInfo_t *) const
Definition: TInterpreter.h:509
TDataType.h
TInterpreter::CreateListOfMethodArgs
virtual void CreateListOfMethodArgs(TFunction *m) const =0
TInterpreter::SuspendAutoParsing::SuspendAutoParsing
SuspendAutoParsing(TInterpreter *where, Bool_t value=kTRUE)
Definition: TInterpreter.h:119
TInterpreter::CallFunc_FactoryMethod
virtual MethodInfo_t * CallFunc_FactoryMethod(CallFunc_t *) const
Definition: TInterpreter.h:324
TInterpreter::kFatal
@ kFatal
Definition: TInterpreter.h:80
TInterpreter::ResetGlobalVar
virtual void ResetGlobalVar(void *obj)=0
TInterpreter::EReturnType::kOther
@ kOther
TInterpreter::MethodArgInfo_Factory
virtual MethodArgInfo_t * MethodArgInfo_Factory() const
Definition: TInterpreter.h:510
TInterpreter::AddIncludePath
virtual void AddIncludePath(const char *path)=0
TInterpreter::ClassInfo_DeleteArray
virtual void ClassInfo_DeleteArray(ClassInfo_t *, void *, bool) const
Definition: TInterpreter.h:403
TInterpreter::GenericError
virtual void GenericError(const char *) const
Definition: TInterpreter.h:256
TInterpreter::IsErrorMessagesEnabled
virtual Bool_t IsErrorMessagesEnabled() const =0
TInterpreter::GetUsingNamespaces
virtual std::vector< std::string > GetUsingNamespaces(ClassInfo_t *cl) const =0
TInterpreter::ForgetMutexState
virtual void ForgetMutexState()=0
TInterpreter::MembersMap_t
class std::map< std::string, std::string > MembersMap_t
Definition: TInterpreter.h:74
TInterpreter::MethodInfo_Factory
virtual MethodInfo_t * MethodInfo_Factory() const
Definition: TInterpreter.h:488
TInterpreter::IsAutoParsingSuspended
virtual Bool_t IsAutoParsingSuspended() const =0
TInterpreter::MethodArgInfo_IsValid
virtual Bool_t MethodArgInfo_IsValid(MethodArgInfo_t *) const
Definition: TInterpreter.h:513
TInterpreter::ResetAll
virtual void ResetAll()=0
gInterpreterMutex
R__EXTERN TVirtualMutex * gInterpreterMutex
Definition: TInterpreter.h:44
TInterpreter::GetFunctionOverloads
virtual void GetFunctionOverloads(ClassInfo_t *cl, const char *funcname, std::vector< DeclId_t > &res) const =0
TInterpreter::MethodArgInfo_TypeNormalizedName
virtual std::string MethodArgInfo_TypeNormalizedName(MethodArgInfo_t *) const =0
TInterpreter::UpdateEnumConstants
virtual void UpdateEnumConstants(TEnum *enumObj, TClass *cl) const =0
TInterpreter::GenerateTClass
virtual TClass * GenerateTClass(ClassInfo_t *classinfo, Bool_t silent=kFALSE)=0
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, Long_t) const =0
TInterpreter::MethodInfo_FactoryCopy
virtual MethodInfo_t * MethodInfo_FactoryCopy(MethodInfo_t *) const
Definition: TInterpreter.h:491
TInterpreter::CallFunc_SetFuncProto
virtual void CallFunc_SetFuncProto(CallFunc_t *, ClassInfo_t *, const char *, const char *, Long_t *, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
Definition: TInterpreter.h:391
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(TypedefInfo_t *info) const =0
TInterpreter::SuspendAutoLoadingRAII::fOldValue
bool fOldValue
Definition: TInterpreter.h:126
TInterpreter::CheckClassTemplate
virtual Bool_t CheckClassTemplate(const char *name)=0
TInterpreter::ClassInfo_New
virtual void * ClassInfo_New(ClassInfo_t *, void *) const
Definition: TInterpreter.h:428
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, const T *arg)
Definition: TInterpreter.h:357
TInterpreter::FuncTempInfo_Delete
virtual void FuncTempInfo_Delete(FuncTempInfo_t *) const =0
TInterpreter::Calc
virtual Long_t Calc(const char *line, EErrorCode *error=0)=0
TInterpreter::ToString
virtual std::string ToString(const char *type, void *obj)=0
TInterpreter::LoadMacro
virtual void LoadMacro(const char *filename, EErrorCode *error=0)=0
TInterpreter::ClassInfo_Next
virtual int ClassInfo_Next(ClassInfo_t *) const
Definition: TInterpreter.h:424
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, Short_t param) const
Definition: TInterpreter.h:341
TInterpreter::GetClass
virtual TClass * GetClass(const std::type_info &typeinfo, Bool_t load) const =0
TInterpreter::ClassInfo_TmpltName
virtual const char * ClassInfo_TmpltName(ClassInfo_t *) const
Definition: TInterpreter.h:436
TInterpreter::CallFunc_IFacePtr
virtual CallFuncIFacePtr_t CallFunc_IFacePtr(CallFunc_t *) const
Definition: TInterpreter.h:328
TEnum
The TEnum class implements the enum type.
Definition: TEnum.h:33
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, Int_t param) const
Definition: TInterpreter.h:342
TInterpreter::GetExitCode
virtual Int_t GetExitCode() const =0
TDictionary::DeclId_t
const void * DeclId_t
Definition: TDictionary.h:209
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, ULong_t) const =0
TInterpreter::kProcessing
@ kProcessing
Definition: TInterpreter.h:81
TInterpreter::ClassInfo_HasMethod
virtual Bool_t ClassInfo_HasMethod(ClassInfo_t *, const char *) const
Definition: TInterpreter.h:413
TInterpreter::DataMemberInfo_Title
virtual const char * DataMemberInfo_Title(DataMemberInfo_t *) const
Definition: TInterpreter.h:470
TInterpreter::FuncTempInfo_FactoryCopy
virtual FuncTempInfo_t * FuncTempInfo_FactoryCopy(FuncTempInfo_t *) const =0
a
auto * a
Definition: textangle.C:12
TInterpreter::MethodInfo_CreateSignature
virtual void MethodInfo_CreateSignature(MethodInfo_t *, TString &) const
Definition: TInterpreter.h:486
TInterpreter::DisplayIncludePath
virtual int DisplayIncludePath(FILE *) const
Definition: TInterpreter.h:254
TNamed
The TNamed class is the base class for all named ROOT classes.
Definition: TNamed.h:29
TInterpreter::CheckClassInfo
virtual ECheckClassInfo CheckClassInfo(const char *name, Bool_t autoload, Bool_t isClassOrNamespaceOnly=kFALSE)=0
TInterpreter::CallFuncIFacePtr_t::kUninitialized
@ kUninitialized
Definition: TInterpreter.h:88
kFALSE
const Bool_t kFALSE
Definition: RtypesCore.h:92
TInterpreter::GetDataMember
virtual DeclId_t GetDataMember(ClassInfo_t *cl, const char *name) const =0
TInterpreter::ClassInfo_IsValid
virtual Bool_t ClassInfo_IsValid(ClassInfo_t *) const
Definition: TInterpreter.h:421
TInterpreter::ClassInfo_Init
virtual void ClassInfo_Init(ClassInfo_t *, const char *) const
Definition: TInterpreter.h:414
TInterpreter::CallFuncIFacePtr_t::Ctor_t
void(* Ctor_t)(void **, void *, unsigned long)
Definition: TInterpreter.h:95
TInterpreter::CallFuncIFacePtr_t::EKind
EKind
Definition: TInterpreter.h:87
TInterpreter::MethodInfo_Next
virtual int MethodInfo_Next(MethodInfo_t *) const
Definition: TInterpreter.h:496
TInterpreter::DiagnoseIfInterpreterException
virtual bool DiagnoseIfInterpreterException(const std::exception &e) const =0
TInterpreter::ClearFileBusy
virtual void ClearFileBusy()=0
TMethod
Each ROOT class (see TClass) has a linked list of methods.
Definition: TMethod.h:38
Long_t
long Long_t
Definition: RtypesCore.h:54
TInterpreter::TInterpreter
TInterpreter()
Definition: TInterpreter.h:139
TInterpreter::GetClassSharedLibs
virtual const char * GetClassSharedLibs(const char *cls)=0
TInterpreter::GenerateTClass
virtual TClass * GenerateTClass(const char *classname, Bool_t emulation, Bool_t silent=kFALSE)=0
TInterpreter::MethodInfo_Property
virtual Long_t MethodInfo_Property(MethodInfo_t *) const =0
TInterpreter::CallFunc_SetArgs
virtual void CallFunc_SetArgs(CallFunc_t *, const char *) const
Definition: TInterpreter.h:331
TInterpreter::MapCppName
virtual const char * MapCppName(const char *) const
Definition: TInterpreter.h:263
TInterpreter::ClassInfo_Property
virtual Long_t ClassInfo_Property(ClassInfo_t *) const
Definition: TInterpreter.h:429
TInterpreter::DataMemberInfo_Property
virtual Long_t DataMemberInfo_Property(DataMemberInfo_t *) const
Definition: TInterpreter.h:464
TInterpreter::TypedefInfo_FactoryCopy
virtual TypedefInfo_t * TypedefInfo_FactoryCopy(TypedefInfo_t *) const
Definition: TInterpreter.h:540
TInterpreter::MethodArgInfo_DefaultValue
virtual const char * MethodArgInfo_DefaultValue(MethodArgInfo_t *) const
Definition: TInterpreter.h:516
TInterpreter::TypedefInfo_IsValid
virtual Bool_t TypedefInfo_IsValid(TypedefInfo_t *) const
Definition: TInterpreter.h:542
TInterpreter::CallFunc_Delete
virtual void CallFunc_Delete(CallFunc_t *) const
Definition: TInterpreter.h:314
TInterpreter::SetClassInfo
virtual void SetClassInfo(TClass *cl, Bool_t reload=kFALSE)=0
TInterpreter::FuncTempInfo_IsValid
virtual Bool_t FuncTempInfo_IsValid(FuncTempInfo_t *) const =0
TInterpreter::GetDataMemberWithValue
virtual DeclId_t GetDataMemberWithValue(const void *ptrvalue) const =0
TInterpreter::TypeInfo_IsValid
virtual Bool_t TypeInfo_IsValid(TypeInfo_t *) const
Definition: TInterpreter.h:528
TInterpreter::RewindDictionary
virtual void RewindDictionary()=0
TInterpreter::CallFuncIFacePtr_t::CallFuncIFacePtr_t
CallFuncIFacePtr_t(Ctor_t func)
Definition: TInterpreter.h:102
R__LOCKGUARD
#define R__LOCKGUARD(mutex)
Definition: TVirtualMutex.h:104
TInterpreter::EReturnType::kLong
@ kLong
TInterpreter::ECheckClassInfo
ECheckClassInfo
Definition: TInterpreter.h:215
TInterpreter::LoadEnums
virtual void LoadEnums(TListOfEnums &cl) const =0
TInterpreter::UpdateListOfTypes
virtual void UpdateListOfTypes()=0
TInterpreter::RegisterModule
virtual void RegisterModule(const char *, const char **, const char **, const char *, const char *, void(*)(), const FwdDeclArgsToKeepCollection_t &fwdDeclArgsToKeep, const char **classesHeaders, Bool_t lateRegistration=false, Bool_t hasCxxModule=false)=0
ULong_t
unsigned long ULong_t
Definition: RtypesCore.h:55
Short_t
short Short_t
Definition: RtypesCore.h:39
TInterpreter::Reset
virtual void Reset()=0
TInterpreter::FuncTempInfo_ExtraProperty
virtual Long_t FuncTempInfo_ExtraProperty(FuncTempInfo_t *) const =0
TInterpreter::GetSharedLibs
virtual const char * GetSharedLibs()=0
TInterpreter::DataMemberInfo_TypeTrueName
virtual const char * DataMemberInfo_TypeTrueName(DataMemberInfo_t *) const
Definition: TInterpreter.h:468
TInterpreter::ClassInfo_New
virtual void * ClassInfo_New(ClassInfo_t *, int, void *) const
Definition: TInterpreter.h:427
TInterpreter::DataMemberInfo_Name
virtual const char * DataMemberInfo_Name(DataMemberInfo_t *) const
Definition: TInterpreter.h:469
TInterpreter::ClassInfo_ClassProperty
virtual Long_t ClassInfo_ClassProperty(ClassInfo_t *) const
Definition: TInterpreter.h:400
TInterpreter::ProcessLineSynch
virtual Long_t ProcessLineSynch(const char *line, EErrorCode *error=0)=0
TInterpreter::CallFunc_ExecWithArgsAndReturn
virtual void CallFunc_ExecWithArgsAndReturn(CallFunc_t *, void *, const void *[]=0, int=0, void *=0) const
Definition: TInterpreter.h:318
TInterpreter::ClassInfo_Name
virtual const char * ClassInfo_Name(ClassInfo_t *) const
Definition: TInterpreter.h:434
line
TLine * line
Definition: entrylistblock_figure1.C:235
TInterpreter::SuspendAutoParsing::fPrevious
Bool_t fPrevious
Definition: TInterpreter.h:117
TInterpreter::Initialize
virtual void Initialize()=0
TInterpreter::SetClassSharedLibs
virtual Int_t SetClassSharedLibs(const char *cls, const char *libs)=0
TInterpreter::BaseClassInfo_Offset
virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t *, void *=0, bool=true) const
Definition: TInterpreter.h:446
TInterpreter::DataMemberInfo_FactoryCopy
virtual DataMemberInfo_t * DataMemberInfo_FactoryCopy(DataMemberInfo_t *) const
Definition: TInterpreter.h:459
TInterpreter::CreateEnum
virtual TEnum * CreateEnum(void *VD, TClass *cl) const =0
void
typedef void((*Func_t)())
TInterpreter::SuspendAutoParsing::fInterp
TInterpreter * fInterp
Definition: TInterpreter.h:116
TInterpreter::ExecuteWithArgsAndReturn
virtual void ExecuteWithArgsAndReturn(TMethod *method, void *address, const void *args[]=0, int=0, void *ret=0) const =0
TInterpreter::ClassInfo_FullName
virtual const char * ClassInfo_FullName(ClassInfo_t *) const
Definition: TInterpreter.h:433
TInterpreter::UpdateListOfGlobalFunctions
virtual void UpdateListOfGlobalFunctions()=0
TInterpreter::GetAutoLoadCallBack
virtual void * GetAutoLoadCallBack() const
Definition: TInterpreter.h:145
unsigned int
TInterpreter::DataMemberInfo_Delete
virtual void DataMemberInfo_Delete(DataMemberInfo_t *) const
Definition: TInterpreter.h:456
TInterpreter::FuncTempInfo_Property
virtual Long_t FuncTempInfo_Property(FuncTempInfo_t *) const =0
TInterpreter::GetMangledName
virtual TString GetMangledName(TClass *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)=0
TInterpreter::CallFunc_GetWrapperCode
virtual std::string CallFunc_GetWrapperCode(CallFunc_t *func) const =0
TInterpreter::FindSym
virtual void * FindSym(const char *) const
Definition: TInterpreter.h:255
ROOT::EFunctionMatchMode
EFunctionMatchMode
Definition: TDictionary.h:155
TInterpreter::RegisterTClassUpdate
virtual void RegisterTClassUpdate(TClass *oldcl, DictFuncPtr_t dict)=0
TInterpreter::TypeInfo_RefType
virtual int TypeInfo_RefType(TypeInfo_t *) const
Definition: TInterpreter.h:531
TInterpreter::CallFunc_ExecWithReturn
virtual void CallFunc_ExecWithReturn(CallFunc_t *, void *, void *) const
Definition: TInterpreter.h:317
TSeqCollection
Sequenceable collection abstract base class.
Definition: TSeqCollection.h:28
TInterpreter::SetGetline
virtual void SetGetline(const char *(*getlineFunc)(const char *prompt), void(*histaddFunc)(const char *line))=0
TInterpreter::SetTempLevel
virtual void SetTempLevel(int) const
Definition: TInterpreter.h:270
TInterpreter::BaseClassInfo_Factory
virtual BaseClassInfo_t * BaseClassInfo_Factory(ClassInfo_t *, ClassInfo_t *) const
Definition: TInterpreter.h:442
TInterpreter::ClassInfo_FileName
virtual const char * ClassInfo_FileName(ClassInfo_t *) const
Definition: TInterpreter.h:432
TInterpreter::DeleteGlobal
virtual Int_t DeleteGlobal(void *obj)=0
TListOfEnums
A collection of TEnum objects designed for fast access given a DeclId_t and for keep track of TEnum t...
Definition: TListOfEnums.h:33
TInterpreter::BaseClassInfo_Next
virtual int BaseClassInfo_Next(BaseClassInfo_t *, int) const
Definition: TInterpreter.h:445
TInterpreter::CallFunc_SetArgRef
void CallFunc_SetArgRef(CallFunc_t *func, T &param) const
Definition: TInterpreter.h:349
ULong64_t
unsigned long long ULong64_t
Definition: RtypesCore.h:74
proto
const char * proto
Definition: civetweb.c:16604
TInterpreterValue
Definition: TInterpreterValue.h:32
TInterpreter::GetExecByteCode
virtual Long_t GetExecByteCode() const
Definition: TInterpreter.h:257
TInterpreter::DisplayClass
virtual int DisplayClass(FILE *, const char *, int, int) const
Definition: TInterpreter.h:253
TInterpreter::SetErrmsgcallback
virtual void SetErrmsgcallback(void *) const
Definition: TInterpreter.h:269
Double_t
double Double_t
Definition: RtypesCore.h:59
TInterpreter::TypedefInfo_Init
virtual void TypedefInfo_Init(TypedefInfo_t *, const char *) const
Definition: TInterpreter.h:541
TInterpreter::ClassInfo_Destruct
virtual void ClassInfo_Destruct(ClassInfo_t *, void *) const
Definition: TInterpreter.h:404
TInterpreter::DataMemberInfo_Factory
virtual DataMemberInfo_t * DataMemberInfo_Factory(DeclId_t declid, ClassInfo_t *clinfo) const =0
TInterpreter::MethodInfo_Delete
virtual void MethodInfo_Delete(MethodInfo_t *) const
Definition: TInterpreter.h:487
TInterpreter::TypedefInfo_TrueName
virtual const char * TypedefInfo_TrueName(TypedefInfo_t *) const
Definition: TInterpreter.h:546
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(ClassInfo_t *info) const =0
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, Long64_t) const =0
TInterpreter::LoadText
virtual Bool_t LoadText(const char *) const
Definition: TInterpreter.h:262
TInterpreter::CallFunc_IsValid
virtual Bool_t CallFunc_IsValid(CallFunc_t *) const
Definition: TInterpreter.h:327
TInterpreter::CallFuncIFacePtr_t::fDtor
Dtor_t fDtor
Definition: TInterpreter.h:111
TInterpreter::CreateListOfDataMembers
virtual void CreateListOfDataMembers(TClass *cl) const =0
TInterpreter::MethodInfo_MethodCallReturnType
virtual EReturnType MethodInfo_MethodCallReturnType(MethodInfo_t *minfo) const =0
TInterpreter::SuspendAutoLoadingRAII::~SuspendAutoLoadingRAII
~SuspendAutoLoadingRAII()
Definition: TInterpreter.h:133
TInterpreter::SetClassAutoloading
int SetClassAutoloading(int a) const
Definition: TInterpreter.h:267
ROOT::Internal::InterpreterMutexRegistrationRAII::~InterpreterMutexRegistrationRAII
~InterpreterMutexRegistrationRAII()
Definition: TInterpreter.h:570
TInterpreter::ClassInfo_GetMethodNArg
virtual int ClassInfo_GetMethodNArg(ClassInfo_t *, const char *, const char *, Bool_t=false, ROOT::EFunctionMatchMode=ROOT::kConversionMatch) const
Definition: TInterpreter.h:411
TInterpreter::CallFunc_Exec
virtual void CallFunc_Exec(CallFunc_t *, void *, TInterpreterValue &) const
Definition: TInterpreter.h:316
TClass
TClass instances represent classes, structs and namespaces in the ROOT type system.
Definition: TClass.h:80
TInterpreter::ClassInfo_Title
virtual const char * ClassInfo_Title(ClassInfo_t *) const
Definition: TInterpreter.h:435
TInterpreter::EReturnType::kNoReturnType
@ kNoReturnType
TEnv
The TEnv class reads config files, by default named .rootrc.
Definition: TEnv.h:125
TInterpreter::CallFunc_SetFuncProto
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 =0
TInterpreter::InspectMembers
virtual void InspectMembers(TMemberInspector &, const void *obj, const TClass *cl, Bool_t isTransient)=0
EDataType
EDataType
Definition: TDataType.h:28
UChar_t
unsigned char UChar_t
Definition: RtypesCore.h:38
TInterpreter::CallFunc_SetArg
void CallFunc_SetArg(CallFunc_t *func, UInt_t param) const
Definition: TInterpreter.h:346
TInterpreter::GetSecurityError
virtual int GetSecurityError() const
Definition: TInterpreter.h:260
TInterpreter::TypeInfo_Delete
virtual void TypeInfo_Delete(TypeInfo_t *) const
Definition: TInterpreter.h:523
TInterpreter::ClassInfo_IsLoaded
virtual Bool_t ClassInfo_IsLoaded(ClassInfo_t *) const
Definition: TInterpreter.h:420
TInterpreter::MethodInfo_TypeNormalizedName
virtual std::string MethodInfo_TypeNormalizedName(MethodInfo_t *) const
Definition: TInterpreter.h:505
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, ULong64_t) const =0
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(FuncTempInfo_t *info) const =0
TObject
Mother of all ROOT objects.
Definition: TObject.h:37
gCling
R__EXTERN TInterpreter * gCling
Definition: TInterpreter.h:561
TInterpreter::TypeInfo_FactoryCopy
virtual TypeInfo_t * TypeInfo_FactoryCopy(TypeInfo_t *) const
Definition: TInterpreter.h:526
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TInterpreter::ClassInfo_Factory
virtual ClassInfo_t * ClassInfo_Factory(const char *) const =0
TInterpreter::TypeInfo_Name
virtual const char * TypeInfo_Name(TypeInfo_t *) const
Definition: TInterpreter.h:529
TInterpreter::DataMemberInfo_Next
virtual int DataMemberInfo_Next(DataMemberInfo_t *) const
Definition: TInterpreter.h:462
TInterpreter::BaseClassInfo_Factory
virtual BaseClassInfo_t * BaseClassInfo_Factory(ClassInfo_t *) const
Definition: TInterpreter.h:441
TInterpreter::CallFunc_Init
virtual void CallFunc_Init(CallFunc_t *) const
Definition: TInterpreter.h:326
TInterpreter::Evaluate
virtual int Evaluate(const char *, TInterpreterValue &)
Definition: TInterpreter.h:281
TInterpreter::GetMangledNameWithPrototype
virtual TString GetMangledNameWithPrototype(TClass *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode=ROOT::kConversionMatch)=0
name
char name[80]
Definition: TGX11.cxx:110
TInterpreter::BaseClassInfo_Name
virtual const char * BaseClassInfo_Name(BaseClassInfo_t *) const
Definition: TInterpreter.h:451
TInterpreter::kNoError
@ kNoError
Definition: TInterpreter.h:77
TInterpreter::ClassInfo_IsEnum
virtual Bool_t ClassInfo_IsEnum(const char *) const
Definition: TInterpreter.h:417
TInterpreter::CallFunc_SetFunc
virtual void CallFunc_SetFunc(CallFunc_t *, ClassInfo_t *, const char *, const char *, Long_t *) const
Definition: TInterpreter.h:389
TInterpreter::SuspendAutoParsing
Definition: TInterpreter.h:115
ROOT::Math::Chebyshev::T
double T(double x)
Definition: ChebyshevPol.h:34
TInterpreter::UnloadFile
virtual int UnloadFile(const char *) const
Definition: TInterpreter.h:271
TInterpreter::SetErrorMessages
virtual Bool_t SetErrorMessages(Bool_t enable=kTRUE)=0
TInterpreter::GetFunctionWithPrototype
virtual DeclId_t GetFunctionWithPrototype(ClassInfo_t *cl, const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)=0
TInterpreter::EndOfLineAction
virtual void EndOfLineAction()=0
TInterpreter::Execute
virtual void Execute(TMethod *method, TObjArray *params, int *error=0)=0
Execute method on this object with parameters stored in the TObjArray.
TInterpreter::ClassInfo_Contains
virtual Bool_t ClassInfo_Contains(ClassInfo_t *info, DeclId_t decl) const =0
TInterpreter::Execute
virtual void Execute(TObject *obj, TClass *cl, TMethod *method, TObjArray *params, int *error=0)=0
R__EXTERN
#define R__EXTERN
Definition: DllImport.h:27
TInterpreter::CallFunc_SetArgImpl
void CallFunc_SetArgImpl(CallFunc_t *func, const U &head, const T &... tail)
Definition: TInterpreter.h:373
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(MethodInfo_t *info) const =0
TInterpreter::ClassInfo_Factory
virtual ClassInfo_t * ClassInfo_Factory(Bool_t=kTRUE) const =0
TInterpreter::GetDeclId
virtual DeclId_t GetDeclId(DataMemberInfo_t *info) const =0
ROOT::Internal::InterpreterMutexRegistrationRAII::InterpreterMutexRegistrationRAII
InterpreterMutexRegistrationRAII(TVirtualMutex *mutex)
Definition: TInterpreter.h:564
TInterpreter::PrintIntro
virtual void PrintIntro()=0
TInterpreter::TypedefInfo_Property
virtual Long_t TypedefInfo_Property(TypedefInfo_t *) const
Definition: TInterpreter.h:544
DictFuncPtr_t
TClass *(* DictFuncPtr_t)()
Definition: Rtypes.h:80
TInterpreter
This class defines an abstract interface to a generic command line interpreter.
Definition: TInterpreter.h:64
TInterpreter::SuspendAutoLoadingRAII::SuspendAutoLoadingRAII
SuspendAutoLoadingRAII(TInterpreter *interp)
Definition: TInterpreter.h:129
TInterpreter::GetSharedLibDeps
virtual const char * GetSharedLibDeps(const char *lib, bool tryDyld=false)=0
type
int type
Definition: TGX11.cxx:121
TInterpreter::SuspendAutoParsing::~SuspendAutoParsing
~SuspendAutoParsing()
Definition: TInterpreter.h:120
TInterpreter::Execute
virtual void Execute(TObject *obj, TClass *cl, const char *method, const char *params, int *error=0)=0
TInterpreter::AutoLoadCallBack_t
int(* AutoLoadCallBack_t)(const char *)
Definition: TInterpreter.h:136
TInterpreter::TypedefInfo_Name
virtual const char * TypedefInfo_Name(TypedefInfo_t *) const
Definition: TInterpreter.h:547
TInterpreter::ClassInfo_Size
virtual int ClassInfo_Size(ClassInfo_t *) const
Definition: TInterpreter.h:430
TInterpreter::EReturnType::kString
@ kString
TInterpreter::Declare
virtual Bool_t Declare(const char *code)=0
TInterpreter::AutoLoad
virtual Int_t AutoLoad(const char *classname, Bool_t knowDictNotLoaded=kFALSE)=0
TInterpreter::GetMore
virtual Int_t GetMore() const =0
TInterpreter::ClassInfo_New
virtual void * ClassInfo_New(ClassInfo_t *) const
Definition: TInterpreter.h:425
TInterpreter::SetClassAutoLoading
virtual int SetClassAutoLoading(int) const
Definition: TInterpreter.h:266
TInterpreter::ClassInfo_IsScopedEnum
virtual Bool_t ClassInfo_IsScopedEnum(ClassInfo_t *) const
Definition: TInterpreter.h:418
TInterpreter::SetDeclAttr
virtual void SetDeclAttr(DeclId_t, const char *)=0
TInterpreter::ClassInfo_Delete
virtual void ClassInfo_Delete(ClassInfo_t *, void *) const
Definition: TInterpreter.h:402
TInterpreter::ClassInfo_Factory
virtual ClassInfo_t * ClassInfo_Factory(ClassInfo_t *) const =0
TInterpreter::GetDataMemberAtAddr
virtual DeclId_t GetDataMemberAtAddr(const void *addr) const =0
TInterpreter::SnapshotMutexState
virtual void SnapshotMutexState(ROOT::TVirtualRWMutex *mtx)=0
TInterpreter::FuncTempInfo_TemplateMinReqArgs
virtual UInt_t FuncTempInfo_TemplateMinReqArgs(FuncTempInfo_t *) const =0
Char_t
char Char_t
Definition: RtypesCore.h:33
TInterpreter::EReturnType
EReturnType
Definition: TInterpreter.h:84
TInterpreter::DataMemberInfo_TypeSize
virtual int DataMemberInfo_TypeSize(DataMemberInfo_t *) const
Definition: TInterpreter.h:466
TInterpreter::GetFunctionWithValues
virtual DeclId_t GetFunctionWithValues(ClassInfo_t *cl, const char *method, const char *params, Bool_t objectIsConst=kFALSE)=0
ROOT
VSD Structures.
Definition: StringConv.hxx:21
TInterpreter::HasPCMForLibrary
virtual Bool_t HasPCMForLibrary(const char *libname) const =0
TInterpreter::DataMemberInfo_IsValid
virtual Bool_t DataMemberInfo_IsValid(DataMemberInfo_t *) const
Definition: TInterpreter.h:460
TInterpreter::GetInterpreterTypeName
virtual void GetInterpreterTypeName(const char *name, std::string &output, Bool_t full=kFALSE)=0
TFunction
Global functions class (global functions are obtained from CINT).
Definition: TFunction.h:30
TInterpreter::TypeName
virtual const char * TypeName(const char *s)=0
TInterpreter::MethodArgInfo_Name
virtual const char * MethodArgInfo_Name(MethodArgInfo_t *) const
Definition: TInterpreter.h:517
TInterpreter::ProcessLine
virtual Long_t ProcessLine(const char *line, EErrorCode *error=0)=0
TInterpreter::CallFunc_SetFunc
virtual void CallFunc_SetFunc(CallFunc_t *, MethodInfo_t *) const
Definition: TInterpreter.h:390
TInterpreter::CallFunc_ExecInt64
virtual Long64_t CallFunc_ExecInt64(CallFunc_t *, void *) const
Definition: TInterpreter.h:320
TInterpreter::CallFunc_SetArguments
void CallFunc_SetArguments(CallFunc_t *func, const T &... args)
Definition: TInterpreter.h:380
TInterpreter::MakeInterpreterValue
virtual std::unique_ptr< TInterpreterValue > MakeInterpreterValue() const
Definition: TInterpreter.h:278
TInterpreter::FuncTempInfo_Title
virtual void FuncTempInfo_Title(FuncTempInfo_t *, TString &title) const =0
TInterpreter::CallFunc_SetArg
virtual void CallFunc_SetArg(CallFunc_t *, Float_t) const =0
TInterpreter::DataMemberInfo_Factory
virtual DataMemberInfo_t * DataMemberInfo_Factory(ClassInfo_t *=0) const
Definition: TInterpreter.h:457
int
TInterpreter::FuncTempInfo_TemplateNargs
virtual UInt_t FuncTempInfo_TemplateNargs(FuncTempInfo_t *) const =0
TInterpreter::CallFuncIFacePtr_t::fCtor
Ctor_t fCtor
Definition: TInterpreter.h:110
TInterpreter::SaveGlobalsContext
virtual void SaveGlobalsContext()=0
TInterpreter::GetRootMapFiles
virtual TObjArray * GetRootMapFiles() const =0