Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TClingCallbacks Class Reference

Definition at line 40 of file TClingCallbacks.h.

Public Member Functions

 TClingCallbacks (cling::Interpreter *interp, bool hasCodeGen)
 
 ~TClingCallbacks ()
 
void DeclDeserialized (const clang::Decl *D) override
 
void DefinitionShadowed (const clang::NamedDecl *D) override
 A previous definition has been shadowed; invalidate TCling' stored data about the old (global) decl.
 
voidEnteringUserCode () override
 
bool FileNotFound (llvm::StringRef FileName, llvm::SmallVectorImpl< char > &RecoveryPath) override
 
void InclusionDirective (clang::SourceLocation, const clang::Token &, llvm::StringRef FileName, bool, clang::CharSourceRange, const clang::FileEntry *, llvm::StringRef, llvm::StringRef, const clang::Module *, clang::SrcMgr::CharacteristicKind) override
 
void Initialize ()
 
bool IsAutoLoadingEnabled ()
 
bool IsAutoParsingSuspended ()
 
void LibraryLoaded (const void *dyLibHandle, llvm::StringRef canonicalName) override
 
bool LibraryLoadingFailed (const std::string &, const std::string &, bool, bool) override
 
void LibraryUnloaded (const void *dyLibHandle, llvm::StringRef canonicalName) override
 
voidLockCompilationDuringUserCodeExecution () override
 
bool LookupObject (clang::LookupResult &R, clang::Scope *S) override
 
bool LookupObject (clang::TagDecl *Tag) override
 
bool LookupObject (const clang::DeclContext *DC, clang::DeclarationName Name) override
 
void PrintStackTrace () override
 
void ReturnedFromUserCode (void *stateInfo) override
 
void SetAutoLoadingEnabled (bool val=true)
 
void SetAutoParsingSuspended (bool val=true)
 
void TransactionCodeGenFinished (const cling::Transaction &T) override
 
void TransactionCodeGenStarted (const cling::Transaction &T) override
 
void TransactionCommitted (const cling::Transaction &T) override
 
void TransactionRollback (const cling::Transaction &T) override
 
void TransactionUnloaded (const cling::Transaction &T) override
 
void UnlockCompilationDuringUserCodeExecution (void *StateInfo) override
 

Private Member Functions

bool findInGlobalModuleIndex (clang::DeclarationName Name, bool loadFirstMatchOnly=true)
 
bool shouldResolveAtRuntime (clang::LookupResult &R, clang::Scope *S)
 
bool tryAutoParseInternal (llvm::StringRef Name, clang::LookupResult &R, clang::Scope *S, const clang::FileEntry *FE=0)
 
bool tryFindROOTSpecialInternal (clang::LookupResult &R, clang::Scope *S)
 
bool tryInjectImplicitAutoKeyword (clang::LookupResult &R, clang::Scope *S)
 
bool tryResolveAtRuntimeInternal (clang::LookupResult &R, clang::Scope *S)
 

Private Attributes

bool fFirstRun = true
 
bool fIsAutoLoading = false
 
bool fIsAutoLoadingRecursively = false
 
bool fIsAutoParsingSuspended = false
 
bool fIsCodeGening = false
 
bool fIsLoadingModule = false
 
voidfLastLookupCtx = nullptr
 
bool fPPChanged = false
 
bool fPPOldFlag = false
 
clang::NamespaceDecl * fROOTSpecialNamespace = nullptr
 
llvm::DenseMap< llvm::StringRef, clang::DeclarationName > m_LoadedModuleFiles
 

#include </home/sftnight/build/workspace/root-makedoc-v626/rootspi/rdoc/src/v6-26-00-patches/core/metacling/src/TClingCallbacks.h>

Inheritance diagram for TClingCallbacks:
[legend]

Constructor & Destructor Documentation

◆ TClingCallbacks()

TClingCallbacks::TClingCallbacks ( cling::Interpreter *  interp,
bool  hasCodeGen 
)

Definition at line 84 of file TClingCallbacks.cxx.

◆ ~TClingCallbacks()

TClingCallbacks::~TClingCallbacks ( )

Definition at line 94 of file TClingCallbacks.cxx.

Member Function Documentation

◆ DeclDeserialized()

void TClingCallbacks::DeclDeserialized ( const clang::Decl *  D)
override

Definition at line 906 of file TClingCallbacks.cxx.

◆ DefinitionShadowed()

void TClingCallbacks::DefinitionShadowed ( const clang::NamedDecl *  D)
override

A previous definition has been shadowed; invalidate TCling' stored data about the old (global) decl.

Definition at line 902 of file TClingCallbacks.cxx.

◆ EnteringUserCode()

void * TClingCallbacks::EnteringUserCode ( )
override

Definition at line 933 of file TClingCallbacks.cxx.

◆ FileNotFound()

bool TClingCallbacks::FileNotFound ( llvm::StringRef  FileName,
llvm::SmallVectorImpl< char > &  RecoveryPath 
)
override

Definition at line 149 of file TClingCallbacks.cxx.

◆ findInGlobalModuleIndex()

bool TClingCallbacks::findInGlobalModuleIndex ( clang::DeclarationName  Name,
bool  loadFirstMatchOnly = true 
)
private

Definition at line 292 of file TClingCallbacks.cxx.

◆ InclusionDirective()

void TClingCallbacks::InclusionDirective ( clang::SourceLocation  sLoc,
const clang::Token &  ,
llvm::StringRef  FileName,
bool  ,
clang::CharSourceRange  ,
const clang::FileEntry *  FE,
llvm::StringRef  ,
llvm::StringRef  ,
const clang::Module *  Imported,
clang::SrcMgr::CharacteristicKind  FileType 
)
override

Definition at line 96 of file TClingCallbacks.cxx.

◆ Initialize()

void TClingCallbacks::Initialize ( )

Definition at line 862 of file TClingCallbacks.cxx.

◆ IsAutoLoadingEnabled()

bool TClingCallbacks::IsAutoLoadingEnabled ( )
inline

Definition at line 62 of file TClingCallbacks.h.

◆ IsAutoParsingSuspended()

bool TClingCallbacks::IsAutoParsingSuspended ( )
inline

Definition at line 65 of file TClingCallbacks.h.

◆ LibraryLoaded()

void TClingCallbacks::LibraryLoaded ( const void dyLibHandle,
llvm::StringRef  canonicalName 
)
override

Definition at line 919 of file TClingCallbacks.cxx.

◆ LibraryLoadingFailed()

bool TClingCallbacks::LibraryLoadingFailed ( const std::string &  errmessage,
const std::string &  libStem,
bool  permanent,
bool  resolved 
)
override

Definition at line 141 of file TClingCallbacks.cxx.

◆ LibraryUnloaded()

void TClingCallbacks::LibraryUnloaded ( const void dyLibHandle,
llvm::StringRef  canonicalName 
)
override

Definition at line 924 of file TClingCallbacks.cxx.

◆ LockCompilationDuringUserCodeExecution()

void * TClingCallbacks::LockCompilationDuringUserCodeExecution ( )
override

Definition at line 946 of file TClingCallbacks.cxx.

◆ LookupObject() [1/3]

bool TClingCallbacks::LookupObject ( clang::LookupResult &  R,
clang::Scope *  S 
)
override

◆ LookupObject() [2/3]

bool TClingCallbacks::LookupObject ( clang::TagDecl *  Tag)
override

Definition at line 407 of file TClingCallbacks.cxx.

◆ LookupObject() [3/3]

bool TClingCallbacks::LookupObject ( const clang::DeclContext *  DC,
clang::DeclarationName  Name 
)
override

◆ PrintStackTrace()

void TClingCallbacks::PrintStackTrace ( )
override

Definition at line 929 of file TClingCallbacks.cxx.

◆ ReturnedFromUserCode()

void TClingCallbacks::ReturnedFromUserCode ( void stateInfo)
override

Definition at line 941 of file TClingCallbacks.cxx.

◆ SetAutoLoadingEnabled()

void TClingCallbacks::SetAutoLoadingEnabled ( bool  val = true)
inline

Definition at line 61 of file TClingCallbacks.h.

◆ SetAutoParsingSuspended()

void TClingCallbacks::SetAutoParsingSuspended ( bool  val = true)
inline

Definition at line 64 of file TClingCallbacks.h.

◆ shouldResolveAtRuntime()

bool TClingCallbacks::shouldResolveAtRuntime ( clang::LookupResult &  R,
clang::Scope *  S 
)
private

Definition at line 728 of file TClingCallbacks.cxx.

◆ TransactionCodeGenFinished()

void TClingCallbacks::TransactionCodeGenFinished ( const cling::Transaction &  T)
inlineoverride

Definition at line 98 of file TClingCallbacks.h.

◆ TransactionCodeGenStarted()

void TClingCallbacks::TransactionCodeGenStarted ( const cling::Transaction &  T)
inlineoverride

Definition at line 90 of file TClingCallbacks.h.

◆ TransactionCommitted()

void TClingCallbacks::TransactionCommitted ( const cling::Transaction &  T)
override

Definition at line 877 of file TClingCallbacks.cxx.

◆ TransactionRollback()

void TClingCallbacks::TransactionRollback ( const cling::Transaction &  T)
override

Definition at line 895 of file TClingCallbacks.cxx.

◆ TransactionUnloaded()

void TClingCallbacks::TransactionUnloaded ( const cling::Transaction &  T)
override

Definition at line 886 of file TClingCallbacks.cxx.

◆ tryAutoParseInternal()

bool TClingCallbacks::tryAutoParseInternal ( llvm::StringRef  Name,
clang::LookupResult &  R,
clang::Scope *  S,
const clang::FileEntry *  FE = 0 
)
private

Definition at line 469 of file TClingCallbacks.cxx.

◆ tryFindROOTSpecialInternal()

bool TClingCallbacks::tryFindROOTSpecialInternal ( clang::LookupResult &  R,
clang::Scope *  S 
)
private

Definition at line 559 of file TClingCallbacks.cxx.

◆ tryInjectImplicitAutoKeyword()

bool TClingCallbacks::tryInjectImplicitAutoKeyword ( clang::LookupResult &  R,
clang::Scope *  S 
)
private

Definition at line 786 of file TClingCallbacks.cxx.

◆ tryResolveAtRuntimeInternal()

bool TClingCallbacks::tryResolveAtRuntimeInternal ( clang::LookupResult &  R,
clang::Scope *  S 
)
private

Definition at line 664 of file TClingCallbacks.cxx.

◆ UnlockCompilationDuringUserCodeExecution()

void TClingCallbacks::UnlockCompilationDuringUserCodeExecution ( void StateInfo)
override

Definition at line 951 of file TClingCallbacks.cxx.

Member Data Documentation

◆ fFirstRun

bool TClingCallbacks::fFirstRun = true
private

Definition at line 44 of file TClingCallbacks.h.

◆ fIsAutoLoading

bool TClingCallbacks::fIsAutoLoading = false
private

Definition at line 45 of file TClingCallbacks.h.

◆ fIsAutoLoadingRecursively

bool TClingCallbacks::fIsAutoLoadingRecursively = false
private

Definition at line 46 of file TClingCallbacks.h.

◆ fIsAutoParsingSuspended

bool TClingCallbacks::fIsAutoParsingSuspended = false
private

Definition at line 47 of file TClingCallbacks.h.

◆ fIsCodeGening

bool TClingCallbacks::fIsCodeGening = false
private

Definition at line 50 of file TClingCallbacks.h.

◆ fIsLoadingModule

bool TClingCallbacks::fIsLoadingModule = false
private

Definition at line 51 of file TClingCallbacks.h.

◆ fLastLookupCtx

void* TClingCallbacks::fLastLookupCtx = nullptr
private

Definition at line 42 of file TClingCallbacks.h.

◆ fPPChanged

bool TClingCallbacks::fPPChanged = false
private

Definition at line 49 of file TClingCallbacks.h.

◆ fPPOldFlag

bool TClingCallbacks::fPPOldFlag = false
private

Definition at line 48 of file TClingCallbacks.h.

◆ fROOTSpecialNamespace

clang::NamespaceDecl* TClingCallbacks::fROOTSpecialNamespace = nullptr
private

Definition at line 43 of file TClingCallbacks.h.

◆ m_LoadedModuleFiles

llvm::DenseMap<llvm::StringRef, clang::DeclarationName> TClingCallbacks::m_LoadedModuleFiles
private

Definition at line 52 of file TClingCallbacks.h.

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