56 if (
gROOT->GetListOfClasses()->FindObject(name) ||
62 const auto lastPos = strrchr(name,
':');
63 if (lastPos !=
nullptr) {
65 const auto enName = lastPos + 1;
66 const auto scopeNameSize = ((
Long64_t)lastPos - (
Long64_t)
name) /
sizeof(decltype(*lastPos)) - 1;
68 char *scopeName =
new char[scopeNameSize + 1];
70 char scopeName[scopeNameSize + 1];
72 strncpy(scopeName, name, scopeNameSize);
73 scopeName[scopeNameSize] =
'\0';
76 if(
auto scope = dynamic_cast<TClass*>(
gROOT->GetListOfClasses()->FindObject(scopeName))){
82 if (
auto listOfEnums = (
TListOfEnums*)scope->GetListOfEnums())
83 theEnum = listOfEnums->THashList::FindObject(enName);
93 return nullptr != theEnum;
115 TypedefInfo_t *info =
gInterpreter->TypedefInfo_Factory(name);
120 if (strcmp(name,result->
GetName()) != 0) {
virtual const char * GetName() const
Returns name of object.
#define R__COLLECTION_READ_GUARD()
static TProtoClass * GetProtoNorm(const char *cname)
Given the class normalized name returns the TClassProto object for the class.
R__EXTERN TVirtualMutex * gInterpreterMutex
TObject * FindObject(const char *name) const
Find object using its name.
THashTable implements a hash table to store TObject's.
virtual TObject * FindObject(const char *name) const
Find an object in this collection using its name.
TDataType * FindType(const char *name) const
Basic data type descriptor (datatype information is obtained from CINT).
A collection of TDataType designed to hold the typedef information and numerical type information...
TObject * FindObject(const char *name) const
Find object using its name.
void Add(TObject *obj)
Add object to the hash table.
#define R__LOCKGUARD(mutex)
static void AddBuiltins(TCollection *types)
Create the TDataType objects for builtins.
Mother of all ROOT objects.
A collection of TEnum objects designed for fast access given a DeclId_t and for keep track of TEnum t...
static DictFuncPtr_t GetDictNorm(const char *cname)
Given the normalized class name returns the Dictionary() function of a class (uses hash of name)...
static bool NameExistsElsewhere(const char *name)