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

#include <ThreadPlanStack.h>

Collaboration diagram for lldb_private::ThreadPlanStackMap:
Collaboration graph
[legend]

Public Member Functions

 ThreadPlanStackMap (Process &process)
 
 ~ThreadPlanStackMap ()=default
 
void Update (ThreadList &current_threads, bool delete_missing, bool check_for_new=true)
 
void AddThread (Thread &thread)
 
bool RemoveTID (lldb::tid_t tid)
 
ThreadPlanStackFind (lldb::tid_t tid)
 
void ClearThreadCache ()
 Clear the Thread* cache that each ThreadPlan contains. More...
 
void Clear ()
 
void DumpPlans (Stream &strm, lldb::DescriptionLevel desc_level, bool internal, bool ignore_boring, bool skip_unreported)
 
bool DumpPlansForTID (Stream &strm, lldb::tid_t tid, lldb::DescriptionLevel desc_level, bool internal, bool ignore_boring, bool skip_unreported)
 
bool PrunePlansForTID (lldb::tid_t tid)
 

Private Types

using PlansList = std::unordered_map< lldb::tid_t, ThreadPlanStack >
 

Private Attributes

Processm_process
 
PlansList m_plans_list
 

Detailed Description

Definition at line 116 of file ThreadPlanStack.h.

Member Typedef Documentation

◆ PlansList

Definition at line 175 of file ThreadPlanStack.h.

Constructor & Destructor Documentation

◆ ThreadPlanStackMap()

lldb_private::ThreadPlanStackMap::ThreadPlanStackMap ( Process process)
inline

Definition at line 118 of file ThreadPlanStack.h.

◆ ~ThreadPlanStackMap()

lldb_private::ThreadPlanStackMap::~ThreadPlanStackMap ( )
default

Member Function Documentation

◆ AddThread()

void lldb_private::ThreadPlanStackMap::AddThread ( Thread thread)
inline

Definition at line 125 of file ThreadPlanStack.h.

References lldb_private::UserID::GetID(), and m_plans_list.

◆ Clear()

void lldb_private::ThreadPlanStackMap::Clear ( )
inline

Definition at line 156 of file ThreadPlanStack.h.

References m_plans_list.

Referenced by lldb_private::Process::Finalize().

◆ ClearThreadCache()

void lldb_private::ThreadPlanStackMap::ClearThreadCache ( )
inline

Clear the Thread* cache that each ThreadPlan contains.

This is useful in situations like when a new Thread list is being generated.

Definition at line 151 of file ThreadPlanStack.h.

References m_plans_list.

Referenced by lldb_private::Process::UpdateThreadList().

◆ DumpPlans()

void ThreadPlanStackMap::DumpPlans ( Stream strm,
lldb::DescriptionLevel  desc_level,
bool  internal,
bool  ignore_boring,
bool  skip_unreported 
)

◆ DumpPlansForTID()

bool ThreadPlanStackMap::DumpPlansForTID ( Stream strm,
lldb::tid_t  tid,
lldb::DescriptionLevel  desc_level,
bool  internal,
bool  ignore_boring,
bool  skip_unreported 
)

◆ Find()

ThreadPlanStack* lldb_private::ThreadPlanStackMap::Find ( lldb::tid_t  tid)
inline

Definition at line 139 of file ThreadPlanStack.h.

References m_plans_list.

Referenced by lldb_private::Process::FindThreadPlans().

◆ PrunePlansForTID()

bool ThreadPlanStackMap::PrunePlansForTID ( lldb::tid_t  tid)

Definition at line 505 of file ThreadPlanStack.cpp.

Referenced by lldb_private::Process::PruneThreadPlansForTID().

◆ RemoveTID()

bool lldb_private::ThreadPlanStackMap::RemoveTID ( lldb::tid_t  tid)
inline

Definition at line 130 of file ThreadPlanStack.h.

References m_plans_list.

◆ Update()

void ThreadPlanStackMap::Update ( ThreadList current_threads,
bool  delete_missing,
bool  check_for_new = true 
)

Member Data Documentation

◆ m_plans_list

PlansList lldb_private::ThreadPlanStackMap::m_plans_list
private

Definition at line 176 of file ThreadPlanStack.h.

Referenced by AddThread(), Clear(), ClearThreadCache(), Find(), and RemoveTID().

◆ m_process

Process& lldb_private::ThreadPlanStackMap::m_process
private

Definition at line 174 of file ThreadPlanStack.h.


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