Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ClingMemberIterInternal::UsingDeclIter Class Reference

Definition at line 71 of file TClingMemberIter.h.

Classes

struct  UsingDeclFrame
 

Public Member Functions

 UsingDeclIter ()=default
 
 UsingDeclIter (const clang::UsingDecl *UD, cling::Interpreter *interp)
 
bool IsValid () const
 
bool Next ()
 
clang::Decl * operator* () const
 
clang::Decl * operator-> () const
 

Private Member Functions

const clang::UsingDecl::shadow_iterator & End () const
 
clang::UsingDecl::shadow_iterator & Iter ()
 
const clang::UsingDecl::shadow_iterator & Iter () const
 

Private Attributes

cling::Interpreter * fInterp = nullptr
 
std::stack< UsingDeclFramefUsingIterStack
 Handle nested UsingDecls:
 

#include </home/sftnight/build/workspace/root-makedoc-v632/rootspi/rdoc/src/v6-32-00-patches/core/metacling/src/TClingMemberIter.h>

Constructor & Destructor Documentation

◆ UsingDeclIter() [1/2]

ClingMemberIterInternal::UsingDeclIter::UsingDeclIter ( )
default

◆ UsingDeclIter() [2/2]

ClingMemberIterInternal::UsingDeclIter::UsingDeclIter ( const clang::UsingDecl *  UD,
cling::Interpreter *  interp 
)

Definition at line 91 of file TClingMemberIter.cxx.

Member Function Documentation

◆ End()

const clang::UsingDecl::shadow_iterator & ClingMemberIterInternal::UsingDeclIter::End ( ) const
inlineprivate

Definition at line 91 of file TClingMemberIter.h.

◆ IsValid()

bool ClingMemberIterInternal::UsingDeclIter::IsValid ( ) const
inline

Definition at line 103 of file TClingMemberIter.h.

◆ Iter() [1/2]

clang::UsingDecl::shadow_iterator & ClingMemberIterInternal::UsingDeclIter::Iter ( )
inlineprivate

Definition at line 89 of file TClingMemberIter.h.

◆ Iter() [2/2]

const clang::UsingDecl::shadow_iterator & ClingMemberIterInternal::UsingDeclIter::Iter ( ) const
inlineprivate

Definition at line 90 of file TClingMemberIter.h.

◆ Next()

bool ClingMemberIterInternal::UsingDeclIter::Next ( )

Definition at line 98 of file TClingMemberIter.cxx.

◆ operator*()

clang::Decl * ClingMemberIterInternal::UsingDeclIter::operator* ( ) const
inline

Definition at line 101 of file TClingMemberIter.h.

◆ operator->()

clang::Decl * ClingMemberIterInternal::UsingDeclIter::operator-> ( ) const
inline

Definition at line 99 of file TClingMemberIter.h.

Member Data Documentation

◆ fInterp

cling::Interpreter* ClingMemberIterInternal::UsingDeclIter::fInterp = nullptr
private

Definition at line 87 of file TClingMemberIter.h.

◆ fUsingIterStack

std::stack<UsingDeclFrame> ClingMemberIterInternal::UsingDeclIter::fUsingIterStack
private

Handle nested UsingDecls:

struct A { void f(); void f(int); };
struct B: A { using A::f; void f(float); };
struct C: B { using B::f; void f(char); };
#define f(i)
Definition RSha256.hxx:104

will cause the UsingDecl iteration to be stacked, to recursively resolve all used decls for f in C.

Definition at line 86 of file TClingMemberIter.h.

  • core/metacling/src/TClingMemberIter.h
  • core/metacling/src/TClingMemberIter.cxx