ROOT  6.06/08
Reference Guide
Public Member Functions | Private Attributes | List of all members
TClingMethodInfo Class Reference

Emulation of the CINT MethodInfo class.

The CINT C++ interpreter provides an interface to metadata about a function through the MethodInfo class. This class provides the same functionality, using an interface as close as possible to MethodInfo but the typedef metadata comes from the Clang C++ compiler, not CINT.

Definition at line 52 of file TClingMethodInfo.h.

Public Member Functions

 TClingMethodInfo (cling::Interpreter *interp)
 
 TClingMethodInfo (const TClingMethodInfo &)
 
 TClingMethodInfo (cling::Interpreter *, const clang::FunctionDecl *)
 
 TClingMethodInfo (cling::Interpreter *, TClingClassInfo *)
 
 ~TClingMethodInfo ()
 
const clang::FunctionDecl * GetMethodDecl () const
 
TDictionary::DeclId_t GetDeclId () const
 
cling::Interpreter * GetInterpreter () const
 
void CreateSignature (TString &signature) const
 
void Init (const clang::FunctionDecl *)
 
void * InterfaceMethod (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const
 
bool IsValid () const
 
int NArg () const
 
int NDefaultArg () const
 
int InternalNext ()
 
int Next ()
 
long Property () const
 
long ExtraProperty () const
 
TClingTypeInfo * Type () const
 
std::string GetMangledName () const
 
const char * GetPrototype (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const
 
const char * Name (const ROOT::TMetaUtils::TNormalizedCtxt &normCtxt) const
 
const char * TypeName () const
 
const char * Title ()
 

Private Attributes

cling::Interpreter * fInterp
 
llvm::SmallVector< clang::DeclContext *, 2 > fContexts
 
bool fFirstTime
 
unsigned int fContextIdx
 
clang::DeclContext::decl_iterator fIter
 
std::string fTitle
 
SpecIterator * fTemplateSpecIter
 
const clang::FunctionDecl * fSingleDecl
 

#include </builddir/build/BUILD/root-6.06.08/core/meta/src/TClingMethodInfo.h>

+ Collaboration diagram for TClingMethodInfo:

Constructor & Destructor Documentation

§ TClingMethodInfo() [1/4]

TClingMethodInfo::TClingMethodInfo ( cling::Interpreter *  interp)
inlineexplicit

Definition at line 66 of file TClingMethodInfo.h.

§ TClingMethodInfo() [2/4]

TClingMethodInfo::TClingMethodInfo ( const TClingMethodInfo &  rhs)

Definition at line 80 of file TClingMethodInfo.cxx.

§ TClingMethodInfo() [3/4]

TClingMethodInfo::TClingMethodInfo ( cling::Interpreter *  interp,
const clang::FunctionDecl *  FD 
)

Definition at line 127 of file TClingMethodInfo.cxx.

§ TClingMethodInfo() [4/4]

TClingMethodInfo::TClingMethodInfo ( cling::Interpreter *  interp,
TClingClassInfo *  ci 
)

Definition at line 98 of file TClingMethodInfo.cxx.

§ ~TClingMethodInfo()

TClingMethodInfo::~TClingMethodInfo ( )

Definition at line 135 of file TClingMethodInfo.cxx.

Member Function Documentation

§ CreateSignature()

void TClingMethodInfo::CreateSignature ( TString &  signature) const

Definition at line 163 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_CreateSignature().

§ ExtraProperty()

long TClingMethodInfo::ExtraProperty ( ) const

Definition at line 419 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_ExtraProperty().

§ GetDeclId()

TDictionary::DeclId_t TClingMethodInfo::GetDeclId ( ) const

§ GetInterpreter()

cling::Interpreter* TClingMethodInfo::GetInterpreter ( ) const
inline

Definition at line 80 of file TClingMethodInfo.h.

§ GetMangledName()

std::string TClingMethodInfo::GetMangledName ( ) const

§ GetMethodDecl()

const clang::FunctionDecl * TClingMethodInfo::GetMethodDecl ( ) const

§ GetPrototype()

const char * TClingMethodInfo::GetPrototype ( const ROOT::TMetaUtils::TNormalizedCtxt &  normCtxt) const

Definition at line 487 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_GetPrototype().

§ Init()

void TClingMethodInfo::Init ( const clang::FunctionDecl *  decl)

§ InterfaceMethod()

void * TClingMethodInfo::InterfaceMethod ( const ROOT::TMetaUtils::TNormalizedCtxt &  normCtxt) const

§ InternalNext()

int TClingMethodInfo::InternalNext ( )

Definition at line 251 of file TClingMethodInfo.cxx.

Referenced by Next(), and TClingMethodInfo().

§ IsValid()

bool TClingMethodInfo::IsValid ( ) const

§ Name()

const char * TClingMethodInfo::Name ( const ROOT::TMetaUtils::TNormalizedCtxt &  normCtxt) const

Definition at line 540 of file TClingMethodInfo.cxx.

Referenced by GetPrototype(), and TCling::MethodInfo_Name().

§ NArg()

int TClingMethodInfo::NArg ( ) const

Definition at line 227 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_NArg().

§ NDefaultArg()

int TClingMethodInfo::NDefaultArg ( ) const

Definition at line 238 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_NDefaultArg().

§ Next()

int TClingMethodInfo::Next ( )

Definition at line 327 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_Next().

§ Property()

long TClingMethodInfo::Property ( ) const

Definition at line 332 of file TClingMethodInfo.cxx.

Referenced by TCling::GenerateTClass(), and TCling::MethodInfo_Property().

§ Title()

const char * TClingMethodInfo::Title ( )

Definition at line 559 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_Title().

§ Type()

TClingTypeInfo * TClingMethodInfo::Type ( ) const

§ TypeName()

const char * TClingMethodInfo::TypeName ( ) const

Definition at line 550 of file TClingMethodInfo.cxx.

Referenced by TCling::MethodInfo_TypeName().

Member Data Documentation

§ fContextIdx

unsigned int TClingMethodInfo::fContextIdx
private

Definition at line 59 of file TClingMethodInfo.h.

Referenced by Init(), and InternalNext().

§ fContexts

llvm::SmallVector<clang::DeclContext *, 2> TClingMethodInfo::fContexts
private

Definition at line 57 of file TClingMethodInfo.h.

Referenced by Init(), InternalNext(), and TClingMethodInfo().

§ fFirstTime

bool TClingMethodInfo::fFirstTime
private

Definition at line 58 of file TClingMethodInfo.h.

Referenced by Init(), InternalNext(), and TClingMethodInfo().

§ fInterp

cling::Interpreter* TClingMethodInfo::fInterp
private

§ fIter

clang::DeclContext::decl_iterator TClingMethodInfo::fIter
private

Definition at line 60 of file TClingMethodInfo.h.

Referenced by Init(), InternalNext(), IsValid(), and TClingMethodInfo().

§ fSingleDecl

const clang::FunctionDecl* TClingMethodInfo::fSingleDecl
private

Definition at line 63 of file TClingMethodInfo.h.

Referenced by GetMethodDecl(), Init(), InternalNext(), and IsValid().

§ fTemplateSpecIter

SpecIterator* TClingMethodInfo::fTemplateSpecIter
private

§ fTitle

std::string TClingMethodInfo::fTitle
private

Definition at line 61 of file TClingMethodInfo.h.

Referenced by Title().


The documentation for this class was generated from the following files: