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

#include <Section.h>

Collaboration diagram for lldb_private::SectionList:
Collaboration graph

Public Types

typedef std::vector< lldb::SectionSP > collection
typedef collection::iterator iterator
typedef collection::const_iterator const_iterator

Public Member Functions

const_iterator begin () const
const_iterator end () const
const_iterator begin ()
const_iterator end ()
 SectionList ()=default
 Create an empty list. More...
SectionListoperator= (const SectionList &rhs)
size_t AddSection (const lldb::SectionSP &section_sp)
size_t AddUniqueSection (const lldb::SectionSP &section_sp)
size_t FindSectionIndex (const Section *sect)
bool ContainsSection (lldb::user_id_t sect_id) const
void Dump (llvm::raw_ostream &s, unsigned indent, Target *target, bool show_header, uint32_t depth) const
lldb::SectionSP FindSectionByName (ConstString section_dstr) const
lldb::SectionSP FindSectionByID (lldb::user_id_t sect_id) const
lldb::SectionSP FindSectionByType (lldb::SectionType sect_type, bool check_children, size_t start_idx=0) const
lldb::SectionSP FindSectionContainingFileAddress (lldb::addr_t addr, uint32_t depth=UINT32_MAX) const
size_t GetSize () const
size_t GetNumSections (uint32_t depth) const
bool ReplaceSection (lldb::user_id_t sect_id, const lldb::SectionSP &section_sp, uint32_t depth=UINT32_MAX)
bool DeleteSection (size_t idx)
lldb::SectionSP GetSectionAtIndex (size_t idx) const
size_t Slide (lldb::addr_t slide_amount, bool slide_children)
void Clear ()
uint64_t GetDebugInfoSize () const
 Get the debug information size from all sections that contain debug information. More...

Protected Attributes

collection m_sections

Detailed Description

Definition at line 34 of file Section.h.

Member Typedef Documentation

◆ collection

typedef std::vector<lldb::SectionSP> lldb_private::SectionList::collection

Definition at line 36 of file Section.h.

◆ const_iterator

typedef collection::const_iterator lldb_private::SectionList::const_iterator

Definition at line 38 of file Section.h.

◆ iterator

typedef collection::iterator lldb_private::SectionList::iterator

Definition at line 37 of file Section.h.

Constructor & Destructor Documentation

◆ SectionList()

lldb_private::SectionList::SectionList ( )

Create an empty list.

Member Function Documentation

◆ AddSection()

size_t SectionList::AddSection ( const lldb::SectionSP &  section_sp)

◆ AddUniqueSection()

size_t SectionList::AddUniqueSection ( const lldb::SectionSP &  section_sp)

Definition at line 501 of file Section.cpp.

References AddSection(), FindSectionIndex(), and UINT32_MAX.

◆ begin() [1/2]

const_iterator lldb_private::SectionList::begin ( )

Definition at line 42 of file Section.h.

References m_sections.

◆ begin() [2/2]

const_iterator lldb_private::SectionList::begin ( ) const

Definition at line 40 of file Section.h.

References m_sections.

Referenced by FindSectionIndex().

◆ Clear()

void lldb_private::SectionList::Clear ( )

Definition at line 90 of file Section.h.

References m_sections.

◆ ContainsSection()

bool SectionList::ContainsSection ( lldb::user_id_t  sect_id) const

Definition at line 628 of file Section.cpp.

References FindSectionByID().

◆ DeleteSection()

bool SectionList::DeleteSection ( size_t  idx)

Definition at line 480 of file Section.cpp.

References m_sections.

Referenced by lldb_private::Module::SetSymbolFileFileSpec().

◆ Dump()

void SectionList::Dump ( llvm::raw_ostream &  s,
unsigned  indent,
Target target,
bool  show_header,
uint32_t  depth 
) const

◆ end() [1/2]

const_iterator lldb_private::SectionList::end ( )

Definition at line 43 of file Section.h.

References m_sections.

◆ end() [2/2]

const_iterator lldb_private::SectionList::end ( ) const

◆ FindSectionByID()

SectionSP SectionList::FindSectionByID ( lldb::user_id_t  sect_id) const

◆ FindSectionByName()

SectionSP SectionList::FindSectionByName ( ConstString  section_dstr) const

◆ FindSectionByType()

SectionSP SectionList::FindSectionByType ( lldb::SectionType  sect_type,
bool  check_children,
size_t  start_idx = 0 
) const

◆ FindSectionContainingFileAddress()

SectionSP SectionList::FindSectionContainingFileAddress ( lldb::addr_t  addr,
uint32_t  depth = UINT32_MAX 
) const

◆ FindSectionIndex()

size_t SectionList::FindSectionIndex ( const Section sect)

Definition at line 488 of file Section.cpp.

References begin(), end(), m_sections, and UINT32_MAX.

Referenced by AddUniqueSection().

◆ GetDebugInfoSize()

uint64_t SectionList::GetDebugInfoSize ( ) const

Get the debug information size from all sections that contain debug information.

Symbol tables are not considered part of the debug information for this call, just known sections that contain debug information.

Definition at line 665 of file Section.cpp.

References GetDebugInfoSize(), GetSize(), and m_sections.

Referenced by GetDebugInfoSize(), and lldb_private::SymbolFileCommon::GetDebugInfoSize().

◆ GetNumSections()

size_t SectionList::GetNumSections ( uint32_t  depth) const

◆ GetSectionAtIndex()

SectionSP SectionList::GetSectionAtIndex ( size_t  idx) const

◆ GetSize()

size_t lldb_private::SectionList::GetSize ( ) const

◆ operator=()

SectionList & SectionList::operator= ( const SectionList rhs)

Definition at line 463 of file Section.cpp.

References m_sections.

◆ ReplaceSection()

bool SectionList::ReplaceSection ( lldb::user_id_t  sect_id,
const lldb::SectionSP &  section_sp,
uint32_t  depth = UINT32_MAX 

◆ Slide()

size_t SectionList::Slide ( lldb::addr_t  slide_amount,
bool  slide_children 

Definition at line 655 of file Section.cpp.

References end(), and m_sections.

Referenced by ObjectFileMachO::ProcessSegmentCommand(), and lldb_private::Section::Slide().

Member Data Documentation

◆ m_sections

collection lldb_private::SectionList::m_sections

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