12 #ifndef ROOT_TClingMethodArgInfo
13 #define ROOT_TClingMethodArgInfo
31 #include "clang/AST/Decl.h"
41 class TClingMethodInfo;
44 class TClingMethodArgInfo final :
public TClingDeclInfo {
48 cling::Interpreter *fInterp;
53 explicit TClingMethodArgInfo(cling::Interpreter *interp) : TClingDeclInfo(nullptr), fInterp(interp), fIdx(-1) {}
54 TClingMethodArgInfo(cling::Interpreter *interp,
const TClingMethodInfo *mi);
57 const clang::ParmVarDecl* GetDecl()
const override {
58 if (
const auto FD = llvm::cast_or_null<clang::FunctionDecl>(TClingDeclInfo::GetDecl()))
59 return FD->getParamDecl(fIdx);
62 bool IsValid()
const override;
64 long Property()
const;
65 const char *DefaultValue()
const;
66 const TClingTypeInfo *Type()
const;
67 const char *TypeName()
const;
71 #endif // ROOT_TClingMethodArgInfo