![]() |
ROOT
6.06/09
Reference Guide
|
Emulation of the CINT TypedefInfo class.
The CINT C++ interpreter provides an interface to metadata about a typedef through the TypedefInfo class. This class provides the same functionality, using an interface as close as possible to TypedefInfo but the typedef metadata comes from the Clang C++ compiler, not CINT.
Definition at line 43 of file TClingTypedefInfo.h.
Public Member Functions | |
TClingTypedefInfo (cling::Interpreter *interp) | |
TClingTypedefInfo (cling::Interpreter *, const char *) | |
Lookup named typedef and initialize the iterator to point to it. More... | |
TClingTypedefInfo (cling::Interpreter *, const clang::TypedefNameDecl *) | |
const clang::Decl * | GetDecl () const |
Get the current typedef declaration. More... | |
void | Init (const char *name) |
Lookup named typedef and reset the iterator to point to it. More... | |
bool | IsValid () const |
Return true if the current iterator position is valid. More... | |
int | InternalNext () |
Increment the iterator, return true if new position is valid. More... | |
int | Next () |
Increment the iterator. More... | |
long | Property () const |
Return a bit mask of metadata about the current typedef. More... | |
int | Size () const |
Return the size in bytes of the underlying type of the current typedef. More... | |
const char * | TrueName (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const |
Get the name of the underlying type of the current typedef. More... | |
const char * | Name () const |
Get the name of the current typedef. More... | |
const char * | Title () |
Private Attributes | |
cling::Interpreter * | fInterp |
bool | fFirstTime |
bool | fDescend |
clang::DeclContext::decl_iterator | fIter |
const clang::Decl * | fDecl |
std::vector< clang::DeclContext::decl_iterator > | fIterStack |
std::string | fTitle |
|
inlineexplicit |
Definition at line 57 of file TClingTypedefInfo.h.
|
explicit |
Lookup named typedef and initialize the iterator to point to it.
Yields a non-iterable TClingTypedefInfo (fIter is invalid).
Definition at line 40 of file TClingTypedefInfo.cxx.
|
explicit |
Definition at line 47 of file TClingTypedefInfo.cxx.
const clang::Decl * TClingTypedefInfo::GetDecl | ( | ) | const |
Get the current typedef declaration.
Definition at line 59 of file TClingTypedefInfo.cxx.
Referenced by Title().
void TClingTypedefInfo::Init | ( | const char * | name | ) |
Lookup named typedef and reset the iterator to point to it.
Definition at line 67 of file TClingTypedefInfo.cxx.
Referenced by TClingTypedefInfo(), and TCling::TypedefInfo_Init().
int TClingTypedefInfo::InternalNext | ( | ) |
Increment the iterator, return true if new position is valid.
Definition at line 119 of file TClingTypedefInfo.cxx.
Referenced by Next().
bool TClingTypedefInfo::IsValid | ( | ) | const |
Return true if the current iterator position is valid.
Definition at line 111 of file TClingTypedefInfo.cxx.
Referenced by Name(), Property(), Size(), Title(), TrueName(), and TCling::TypedefInfo_IsValid().
const char * TClingTypedefInfo::Name | ( | ) | const |
Get the name of the current typedef.
Definition at line 295 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_Name().
int TClingTypedefInfo::Next | ( | ) |
Increment the iterator.
Definition at line 188 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_Next().
long TClingTypedefInfo::Property | ( | ) | const |
Return a bit mask of metadata about the current typedef.
Definition at line 196 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_Property().
int TClingTypedefInfo::Size | ( | ) | const |
Return the size in bytes of the underlying type of the current typedef.
Definition at line 244 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_Size().
const char * TClingTypedefInfo::Title | ( | ) |
Definition at line 311 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_Title().
const char * TClingTypedefInfo::TrueName | ( | const ROOT::TMetaUtils::TNormalizedCtxt & | normCtxt | ) | const |
Get the name of the underlying type of the current typedef.
Definition at line 273 of file TClingTypedefInfo.cxx.
Referenced by TCling::TypedefInfo_TrueName().
|
private |
Definition at line 51 of file TClingTypedefInfo.h.
Referenced by GetDecl(), Init(), InternalNext(), IsValid(), Name(), Property(), Size(), and TrueName().
|
private |
Definition at line 49 of file TClingTypedefInfo.h.
Referenced by Init(), and InternalNext().
|
private |
Definition at line 48 of file TClingTypedefInfo.h.
Referenced by Init(), and InternalNext().
|
private |
Definition at line 47 of file TClingTypedefInfo.h.
Referenced by Init(), InternalNext(), Name(), and TrueName().
|
private |
Definition at line 50 of file TClingTypedefInfo.h.
Referenced by Init(), and InternalNext().
|
private |
Definition at line 52 of file TClingTypedefInfo.h.
Referenced by Init(), and InternalNext().
|
private |
Definition at line 53 of file TClingTypedefInfo.h.
Referenced by Title().