LLDB  mainline
Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor Class Reference

Abstraction to read the Objective-C class info from the shared cache. More...

Inheritance diagram for lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor:
Collaboration graph
[legend]

Public Member Functions

 SharedCacheClassInfoExtractor (AppleObjCRuntimeV2 &runtime)
 
DescriptorMapUpdateResult UpdateISAToDescriptorMap ()
 
- Public Member Functions inherited from lldb_private::AppleObjCRuntimeV2::ClassInfoExtractor
 ClassInfoExtractor (AppleObjCRuntimeV2 &runtime)
 
std::mutex & GetMutex ()
 

Private Member Functions

UtilityFunctionGetClassInfoUtilityFunction (ExecutionContext &exe_ctx)
 
std::unique_ptr< UtilityFunctionGetClassInfoUtilityFunctionImpl (ExecutionContext &exe_ctx)
 

Private Attributes

std::unique_ptr< UtilityFunctionm_utility_function
 
lldb::addr_t m_args = LLDB_INVALID_ADDRESS
 

Additional Inherited Members

- Protected Attributes inherited from lldb_private::AppleObjCRuntimeV2::ClassInfoExtractor
AppleObjCRuntimeV2m_runtime
 The lifetime of this object is tied to that of the runtime. More...
 
std::mutex m_mutex
 

Detailed Description

Abstraction to read the Objective-C class info from the shared cache.

Definition at line 364 of file AppleObjCRuntimeV2.h.

Constructor & Destructor Documentation

◆ SharedCacheClassInfoExtractor()

lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::SharedCacheClassInfoExtractor ( AppleObjCRuntimeV2 runtime)
inline

Definition at line 366 of file AppleObjCRuntimeV2.h.

Member Function Documentation

◆ GetClassInfoUtilityFunction()

UtilityFunction * AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::GetClassInfoUtilityFunction ( ExecutionContext exe_ctx)
private

Definition at line 1723 of file AppleObjCRuntimeV2.cpp.

◆ GetClassInfoUtilityFunctionImpl()

std::unique_ptr< UtilityFunction > AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::GetClassInfoUtilityFunctionImpl ( ExecutionContext exe_ctx)
private

◆ UpdateISAToDescriptorMap()

AppleObjCRuntimeV2::DescriptorMapUpdateResult AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::UpdateISAToDescriptorMap ( )

Definition at line 1963 of file AppleObjCRuntimeV2.cpp.

References lldb_private::Process::AllocateMemory(), lldb_private::DiagnosticManager::Clear(), lldb_private::Process::DeallocateMemory(), lldb_private::DiagnosticManager::Dump(), lldb::eEncodingUint, lldb::eExpressionCompleted, lldb_private::FunctionCaller::ExecuteFunction(), lldb_private::AppleObjCRuntimeV2::DescriptorMapUpdateResult::Fail(), lldb_private::Process::GetAddressByteSize(), lldb_private::FunctionCaller::GetArgumentValues(), lldb_private::TypeSystemClang::GetBuiltinTypeForEncodingAndBitSize(), lldb_private::Process::GetByteOrder(), lldb_private::DataBufferHeap::GetBytes(), lldb_private::DataBufferHeap::GetByteSize(), lldb_private::ThreadList::GetExpressionExecutionThread(), lldb_private::ScratchTypeSystemClang::GetForTarget(), lldb_private::UtilityFunction::GetFunctionCaller(), lldb_private::GetLogIfAllCategoriesSet(), lldb_private::GetLogIfAnyCategoriesSet(), lldb_private::Value::GetScalar(), lldb_private::Process::GetTarget(), lldb_private::Process::GetThreadList(), lldb_private::DataExtractor::GetU64(), lldb_private::ProcessProperties::GetUtilityExpressionTimeout(), lldb_private::ValueList::GetValueAtIndex(), lldb_private::Log::GetVerbose(), LIBLLDB_LOG_PROCESS, LIBLLDB_LOG_TYPES, LLDB_INVALID_ADDRESS, LLDB_LOG, LLDB_LOGF, lldb_private::Process::ReadMemory(), lldb_private::Value::Scalar, lldb_private::Value::SetCompilerType(), lldb_private::EvaluateExpressionOptions::SetIgnoreBreakpoints(), lldb_private::EvaluateExpressionOptions::SetIsForUtilityExpr(), lldb_private::EvaluateExpressionOptions::SetStopOthers(), lldb_private::EvaluateExpressionOptions::SetTimeout(), lldb_private::EvaluateExpressionOptions::SetTryAllThreads(), lldb_private::EvaluateExpressionOptions::SetUnwindOnError(), lldb_private::Value::SetValueType(), lldb_private::Scalar::ULong(), and lldb_private::FunctionCaller::WriteFunctionArguments().

Referenced by lldb_private::AppleObjCRuntimeV2::UpdateISAToDescriptorMapIfNeeded().

Member Data Documentation

◆ m_args

lldb::addr_t lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::m_args = LLDB_INVALID_ADDRESS
private

Definition at line 378 of file AppleObjCRuntimeV2.h.

◆ m_utility_function

std::unique_ptr<UtilityFunction> lldb_private::AppleObjCRuntimeV2::SharedCacheClassInfoExtractor::m_utility_function
private

Definition at line 377 of file AppleObjCRuntimeV2.h.


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