ROOT
6.07/01
Reference Guide
|
Emulation of the CINT DataMemberInfo class.
The CINT C++ interpreter provides an interface to metadata about the data members of a class through the DataMemberInfo class. This class provides the same functionality, using an interface as close as possible to DataMemberInfo but the data member metadata comes from the Clang C++ compiler, not CINT.
Definition at line 53 of file TClingDataMemberInfo.h.
Public Types | |
typedef TDictionary::DeclId_t | DeclId_t |
Public Member Functions | |
~TClingDataMemberInfo () | |
TClingDataMemberInfo (cling::Interpreter *interp) | |
TClingDataMemberInfo (cling::Interpreter *, TClingClassInfo *) | |
TClingDataMemberInfo (cling::Interpreter *, const clang::ValueDecl *, TClingClassInfo *) | |
TClingDataMemberInfo (const TClingDataMemberInfo &rhs) | |
TClingDataMemberInfo & | operator= (const TClingDataMemberInfo &rhs) |
int | ArrayDim () const |
TClingClassInfo * | GetClassInfo () const |
const clang::Decl * | GetDecl () const |
DeclId_t | GetDeclId () const |
bool | IsValid () const |
int | MaxIndex (int dim) const |
int | InternalNext () |
bool | Next () |
long | Offset () |
long | Property () const |
long | TypeProperty () const |
int | TypeSize () const |
const char * | TypeName () const |
const char * | TypeTrueName (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const |
const char * | Name () const |
const char * | Title () |
llvm::StringRef | ValidArrayIndex () const |
Private Member Functions | |
void | CheckForIoTypeAndName () const |
Private Attributes | |
cling::Interpreter * | fInterp |
TClingClassInfo * | fClassInfo |
bool | fFirstTime |
clang::DeclContext::decl_iterator | fIter |
std::vector < clang::DeclContext::decl_iterator > | fIterStack |
std::string | fTitle |
const clang::ValueDecl * | fSingleDecl |
llvm::SmallVector < clang::DeclContext *, 2 > | fContexts |
unsigned int | fContextIdx |
std::string | fIoType |
std::string | fIoName |
union { | |
float fFloat | |
double fDouble | |
long fLong | |
} | fConstInitVal |
#include </mnt/vdb/lsf/workspace/root-makedoc/rootspi/rdoc/src/master/core/meta/src/TClingDataMemberInfo.h>
Definition at line 119 of file TClingDataMemberInfo.h.
|
inline |
Definition at line 79 of file TClingDataMemberInfo.h.
|
inlineexplicit |
Definition at line 81 of file TClingDataMemberInfo.h.
TClingDataMemberInfo::TClingDataMemberInfo | ( | cling::Interpreter * | interp, |
TClingClassInfo * | ci | ||
) |
Definition at line 48 of file TClingDataMemberInfo.cxx.
TClingDataMemberInfo::TClingDataMemberInfo | ( | cling::Interpreter * | interp, |
const clang::ValueDecl * | ValD, | ||
TClingClassInfo * | ci | ||
) |
Definition at line 78 of file TClingDataMemberInfo.cxx.
|
inline |
Definition at line 96 of file TClingDataMemberInfo.h.
int TClingDataMemberInfo::ArrayDim | ( | ) | const |
Definition at line 122 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_ArrayDim(), and MaxIndex().
|
inlineprivate |
Definition at line 96 of file TClingDataMemberInfo.cxx.
Referenced by Name(), TypeName(), and TypeTrueName().
|
inline |
Definition at line 122 of file TClingDataMemberInfo.h.
|
inline |
Definition at line 123 of file TClingDataMemberInfo.h.
Referenced by ArrayDim(), CheckForIoTypeAndName(), GetDeclId(), IsValid(), MaxIndex(), Name(), Offset(), Property(), Title(), TypeName(), TypeProperty(), TypeSize(), TypeTrueName(), and ValidArrayIndex().
TDictionary::DeclId_t TClingDataMemberInfo::GetDeclId | ( | ) | const |
Definition at line 114 of file TClingDataMemberInfo.cxx.
int TClingDataMemberInfo::InternalNext | ( | ) |
Definition at line 236 of file TClingDataMemberInfo.cxx.
Referenced by Next(), and TClingDataMemberInfo().
|
inline |
Definition at line 125 of file TClingDataMemberInfo.h.
Referenced by ArrayDim(), TCling::DataMemberInfo_IsValid(), GetDeclId(), MaxIndex(), Name(), Offset(), Property(), Title(), TypeName(), TypeProperty(), TypeSize(), TypeTrueName(), and ValidArrayIndex().
int TClingDataMemberInfo::MaxIndex | ( | int | dim | ) | const |
Definition at line 169 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_MaxIndex().
const char * TClingDataMemberInfo::Name | ( | ) | const |
Definition at line 583 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_Name().
|
inline |
Definition at line 128 of file TClingDataMemberInfo.h.
Referenced by TCling::DataMemberInfo_Next().
long TClingDataMemberInfo::Offset | ( | ) |
Definition at line 299 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_Offset().
|
inline |
Definition at line 106 of file TClingDataMemberInfo.h.
long TClingDataMemberInfo::Property | ( | ) | const |
Definition at line 378 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_Property().
const char * TClingDataMemberInfo::Title | ( | ) |
Definition at line 606 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_Title().
const char * TClingDataMemberInfo::TypeName | ( | ) | const |
Definition at line 521 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_TypeName().
long TClingDataMemberInfo::TypeProperty | ( | ) | const |
Definition at line 487 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_TypeProperty().
int TClingDataMemberInfo::TypeSize | ( | ) | const |
Definition at line 497 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_TypeSize().
const char * TClingDataMemberInfo::TypeTrueName | ( | const ROOT::TMetaUtils::TNormalizedCtxt & | normCtxt | ) | const |
Definition at line 551 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_TypeTrueName().
llvm::StringRef TClingDataMemberInfo::ValidArrayIndex | ( | ) | const |
Definition at line 642 of file TClingDataMemberInfo.cxx.
Referenced by TCling::DataMemberInfo_ValidArrayIndex().
|
private |
Definition at line 58 of file TClingDataMemberInfo.h.
Referenced by GetClassInfo(), operator=(), TClingDataMemberInfo(), TypeName(), TypeTrueName(), and ~TClingDataMemberInfo().
union { ... } TClingDataMemberInfo::fConstInitVal |
Referenced by Offset().
|
private |
Definition at line 67 of file TClingDataMemberInfo.h.
Referenced by InternalNext().
|
private |
Definition at line 65 of file TClingDataMemberInfo.h.
Referenced by InternalNext(), and TClingDataMemberInfo().
double TClingDataMemberInfo::fDouble |
Definition at line 72 of file TClingDataMemberInfo.h.
|
private |
Definition at line 59 of file TClingDataMemberInfo.h.
Referenced by InternalNext(), operator=(), and TClingDataMemberInfo().
float TClingDataMemberInfo::fFloat |
Definition at line 71 of file TClingDataMemberInfo.h.
|
private |
Definition at line 57 of file TClingDataMemberInfo.h.
Referenced by InternalNext(), Offset(), operator=(), TClingDataMemberInfo(), TypeName(), TypeProperty(), and TypeTrueName().
|
mutableprivate |
Definition at line 69 of file TClingDataMemberInfo.h.
Referenced by CheckForIoTypeAndName(), and Name().
|
mutableprivate |
Definition at line 68 of file TClingDataMemberInfo.h.
Referenced by CheckForIoTypeAndName(), TypeName(), and TypeTrueName().
|
private |
Definition at line 60 of file TClingDataMemberInfo.h.
Referenced by GetDecl(), InternalNext(), operator=(), and TClingDataMemberInfo().
|
private |
Definition at line 61 of file TClingDataMemberInfo.h.
Referenced by InternalNext(), operator=(), and TClingDataMemberInfo().
long TClingDataMemberInfo::fLong |
Definition at line 73 of file TClingDataMemberInfo.h.
|
private |
Definition at line 63 of file TClingDataMemberInfo.h.
Referenced by GetDecl(), InternalNext(), and TClingDataMemberInfo().
|
private |
Definition at line 62 of file TClingDataMemberInfo.h.
Referenced by Title().