LLDB mainline
Public Member Functions | Private Attributes | List of all members
PluginInstances< Instance > Class Template Reference

Public Member Functions

template<typename... Args>
bool RegisterPlugin (llvm::StringRef name, llvm::StringRef description, typename Instance::CallbackType callback, Args &&...args)
 
bool UnregisterPlugin (typename Instance::CallbackType callback)
 
Instance::CallbackType GetCallbackAtIndex (uint32_t idx)
 
llvm::StringRef GetDescriptionAtIndex (uint32_t idx)
 
llvm::StringRef GetNameAtIndex (uint32_t idx)
 
Instance::CallbackType GetCallbackForName (llvm::StringRef name)
 
void PerformDebuggerCallback (Debugger &debugger)
 
const std::vector< Instance > & GetInstances () const
 
std::vector< Instance > & GetInstances ()
 
Instance * GetInstanceAtIndex (uint32_t idx)
 

Private Attributes

std::vector< Instance > m_instances
 

Detailed Description

template<typename Instance>
class PluginInstances< Instance >

Definition at line 199 of file PluginManager.cpp.

Member Function Documentation

◆ GetCallbackAtIndex()

template<typename Instance >
Instance::CallbackType PluginInstances< Instance >::GetCallbackAtIndex ( uint32_t  idx)
inline

Definition at line 228 of file PluginManager.cpp.

Referenced by lldb_private::PluginManager::GetABICreateCallbackAtIndex(), lldb_private::PluginManager::GetDisassemblerCreateCallbackAtIndex(), lldb_private::PluginManager::GetDynamicLoaderCreateCallbackAtIndex(), lldb_private::PluginManager::GetEmulateInstructionCreateCallbackAtIndex(), lldb_private::PluginManager::GetInstrumentationRuntimeCreateCallbackAtIndex(), lldb_private::PluginManager::GetJITLoaderCreateCallbackAtIndex(), lldb_private::PluginManager::GetLanguageCreateCallbackAtIndex(), lldb_private::PluginManager::GetLanguageRuntimeCreateCallbackAtIndex(), lldb_private::PluginManager::GetMemoryHistoryCreateCallbackAtIndex(), lldb_private::PluginManager::GetObjectContainerCreateCallbackAtIndex(), lldb_private::PluginManager::GetObjectFileCreateCallbackAtIndex(), lldb_private::PluginManager::GetOperatingSystemCreateCallbackAtIndex(), lldb_private::PluginManager::GetPlatformCreateCallbackAtIndex(), lldb_private::PluginManager::GetProcessCreateCallbackAtIndex(), lldb_private::PluginManager::GetREPLCreateCallbackAtIndex(), lldb_private::PluginManager::GetScriptInterpreterCreateCallbackAtIndex(), lldb_private::PluginManager::GetStructuredDataPluginCreateCallbackAtIndex(), lldb_private::PluginManager::GetSymbolFileCreateCallbackAtIndex(), lldb_private::PluginManager::GetSymbolLocatorCreateCallbackAtIndex(), lldb_private::PluginManager::GetSymbolVendorCreateCallbackAtIndex(), lldb_private::PluginManager::GetSystemRuntimeCreateCallbackAtIndex(), lldb_private::PluginManager::GetTypeSystemCreateCallbackAtIndex(), and lldb_private::PluginManager::GetUnwindAssemblyCreateCallbackAtIndex().

◆ GetCallbackForName()

template<typename Instance >
Instance::CallbackType PluginInstances< Instance >::GetCallbackForName ( llvm::StringRef  name)
inline

◆ GetDescriptionAtIndex()

template<typename Instance >
llvm::StringRef PluginInstances< Instance >::GetDescriptionAtIndex ( uint32_t  idx)
inline

◆ GetInstanceAtIndex()

template<typename Instance >
Instance * PluginInstances< Instance >::GetInstanceAtIndex ( uint32_t  idx)
inline

Definition at line 266 of file PluginManager.cpp.

◆ GetInstances() [1/2]

template<typename Instance >
std::vector< Instance > & PluginInstances< Instance >::GetInstances ( )
inline

Definition at line 264 of file PluginManager.cpp.

◆ GetInstances() [2/2]

template<typename Instance >
const std::vector< Instance > & PluginInstances< Instance >::GetInstances ( ) const
inline

◆ GetNameAtIndex()

template<typename Instance >
llvm::StringRef PluginInstances< Instance >::GetNameAtIndex ( uint32_t  idx)
inline

◆ PerformDebuggerCallback()

template<typename Instance >
void PluginInstances< Instance >::PerformDebuggerCallback ( Debugger debugger)
inline

Definition at line 256 of file PluginManager.cpp.

Referenced by lldb_private::PluginManager::DebuggerInitialize().

◆ RegisterPlugin()

template<typename Instance >
template<typename... Args>
bool PluginInstances< Instance >::RegisterPlugin ( llvm::StringRef  name,
llvm::StringRef  description,
typename Instance::CallbackType  callback,
Args &&...  args 
)
inline

Definition at line 202 of file PluginManager.cpp.

Referenced by lldb_private::PluginManager::RegisterPlugin().

◆ UnregisterPlugin()

template<typename Instance >
bool PluginInstances< Instance >::UnregisterPlugin ( typename Instance::CallbackType  callback)
inline

Definition at line 214 of file PluginManager.cpp.

Referenced by lldb_private::PluginManager::UnregisterPlugin().

Member Data Documentation

◆ m_instances

template<typename Instance >
std::vector<Instance> PluginInstances< Instance >::m_instances
private

Definition at line 273 of file PluginManager.cpp.


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