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 45 of file TClingTypedefInfo.h.
Public Member Functions | |
| TClingTypedefInfo (cling::Interpreter *, const char *) | |
| Lookup named typedef and initialize the iterator to point to it. | |
| TClingTypedefInfo (cling::Interpreter *, const clang::TypedefNameDecl *) | |
| TClingTypedefInfo (cling::Interpreter *interp) | |
| void | Init (const char *name) |
| Lookup named typedef and reset the iterator to point to it. | |
| int | InternalNext () |
| Increment the iterator, return true if new position is valid. | |
| const char * | Name () const override |
| Get the name of the current typedef. | |
| int | Next () |
| Increment the iterator. | |
| long | Property () const |
| Return a bit mask of metadata about the current typedef. | |
| int | Size () const |
| Return the size in bytes of the underlying type of the current typedef. | |
| const char * | Title () |
| const char * | TrueName (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const |
| Get the name of the underlying type of the current typedef. | |
Public Member Functions inherited from TClingDeclInfo | |
| TClingDeclInfo ()=default | |
| TClingDeclInfo (const clang::Decl *D) | |
| virtual | ~TClingDeclInfo () |
| clang::Decl * | GetDecl () |
| virtual const clang::Decl * | GetDecl () const |
| virtual bool | IsValid () const |
Private Attributes | |
| bool | fDescend |
| bool | fFirstTime |
| cling::Interpreter * | fInterp |
| clang::DeclContext::decl_iterator | fIter |
| std::vector< clang::DeclContext::decl_iterator > | fIterStack |
| std::string | fTitle |
Additional Inherited Members | |
Protected Member Functions inherited from TClingDeclInfo | |
| long | Property (long property, clang::QualType &qt) const |
Protected Attributes inherited from TClingDeclInfo | |
| const clang::Decl * | fDecl = nullptr |
| std::string | fNameCache |
|
inlineexplicit |
Definition at line 58 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.
| void TClingTypedefInfo::Init | ( | const char * | name | ) |
Lookup named typedef and reset the iterator to point to it.
Definition at line 58 of file TClingTypedefInfo.cxx.
| int TClingTypedefInfo::InternalNext | ( | ) |
Increment the iterator, return true if new position is valid.
Definition at line 102 of file TClingTypedefInfo.cxx.
|
overridevirtual |
Get the name of the current typedef.
Reimplemented from TClingDeclInfo.
Definition at line 255 of file TClingTypedefInfo.cxx.
| int TClingTypedefInfo::Next | ( | ) |
Increment the iterator.
Definition at line 173 of file TClingTypedefInfo.cxx.
| long TClingTypedefInfo::Property | ( | ) | const |
Return a bit mask of metadata about the current typedef.
Definition at line 181 of file TClingTypedefInfo.cxx.
| int TClingTypedefInfo::Size | ( | ) | const |
Return the size in bytes of the underlying type of the current typedef.
Definition at line 196 of file TClingTypedefInfo.cxx.
| const char * TClingTypedefInfo::Title | ( | ) |
Definition at line 271 of file TClingTypedefInfo.cxx.
| const char * TClingTypedefInfo::TrueName | ( | const ROOT::TMetaUtils::TNormalizedCtxt & | normCtxt | ) | const |
Get the name of the underlying type of the current typedef.
Definition at line 231 of file TClingTypedefInfo.cxx.
|
private |
Definition at line 51 of file TClingTypedefInfo.h.
|
private |
Definition at line 50 of file TClingTypedefInfo.h.
|
private |
Definition at line 49 of file TClingTypedefInfo.h.
|
private |
Definition at line 52 of file TClingTypedefInfo.h.
|
private |
Definition at line 53 of file TClingTypedefInfo.h.
|
private |
Definition at line 54 of file TClingTypedefInfo.h.