12#ifndef ROOT_TMetaUtils
13#define ROOT_TMetaUtils
20#include <unordered_set>
28#if defined(__GNUC__) && !defined(__clang__)
29#pragma GCC diagnostic push
30#pragma GCC diagnostic ignored "-Wpragmas"
31#pragma GCC diagnostic ignored "-Wclass-memaccess"
34#include "clang/Basic/Module.h"
36#if defined(__GNUC__) && !defined(__clang__)
37#pragma GCC diagnostic pop
100class AnnotatedRecordDecl;
107 static const std::string
iotype(
"iotype");
108 static const std::string
name(
"name");
110 static const std::string
ioname(
"ioname");
121 const cling::Interpreter &
interp,
156 bool replace =
false);
216 const clang::RecordDecl *
decl,
226 const clang::RecordDecl *
decl,
238 const clang::RecordDecl *
decl,
250 const clang::RecordDecl *
decl,
292 operator clang::RecordDecl
const *()
const {
319 const clang::CXXRecordDecl *
GetType()
const;
376 const clang::QualType &
qti,
379 const cling::Interpreter &
interp,
380 const char *
tcl =
nullptr);
383bool IsBase(
const clang::CXXRecordDecl *cl,
const clang::CXXRecordDecl *base,
const clang::CXXRecordDecl *context,
const cling::Interpreter &
interp);
404bool HasNewMerge(clang::CXXRecordDecl
const*,
const cling::Interpreter&);
407bool HasOldMerge(clang::CXXRecordDecl
const*,
const cling::Interpreter&);
419bool NeedDestructor(clang::CXXRecordDecl
const*,
const cling::Interpreter&);
426 const cling::Interpreter&,
bool diagnose);
489 const std::function<
void(
const clang::Module::Header &)> &
closure,
505std::string
TrueName(
const clang::FieldDecl &
m);
509 const cling::Interpreter &
gInterp,
515 const AnnotatedRecordDecl &cl,
516 const clang::CXXRecordDecl *
decl,
517 const cling::Interpreter &
interp,
526 const cling::Interpreter &
gInterp,
531 const AnnotatedRecordDecl &cl,
532 const cling::Interpreter &
interp,
540 const AnnotatedRecordDecl &cl,
541 const clang::CXXRecordDecl *
decl,
542 const cling::Interpreter &
interp,
549 const clang::CXXRecordDecl*
clxx,
550 const cling::Interpreter &
interp,
555 const clang::CXXRecordDecl*
clxx,
556 const cling::Interpreter &
interp,
578#if defined(R__MACOSX) || defined(R__WIN32)
639llvm::StringRef
GetComment(
const clang::Decl &
decl, clang::SourceLocation *
loc =
nullptr);
704bool IsOfType(
const clang::CXXRecordDecl &cl,
const std::string&
type,
const cling::LookupHelper&
lh);
725 clang::ClassTemplateDecl*&
ctd,
726 clang::ClassTemplateSpecializationDecl*&
ctsd);
734 std::list<std::pair<std::string,bool> >&);
737 std::list<std::pair<std::string,bool> >&);
741 std::list<std::pair<std::string,unsigned int> >&
enclosingSc);
783 const char *
type =
nullptr;
798 if (!location || !location[0]) {
837inline void Info(
const char *location,
const char *
va_(
fmt), ...)
881namespace AST2SourceTools {
886 const cling::Interpreter&
interp, std::string *
logs);
916int GetDefArg(
const clang::ParmVarDecl& par, std::string&
valAsString,
const clang::PrintingPolicy& pp);
926 std::unordered_set<std::string>*
fwdDeclSet=
nullptr);
static Roo_reg_AGKInteg1D instance
cling::Interpreter * gInterp
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Int_t gErrorIgnoreLevel
Error handling routines.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void input
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
Option_t Option_t TPoint TPoint const char mode
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...