LLDB  mainline
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
lldb_private::RangeArray< B, S, N > Class Template Reference

#include <RangeMap.h>

Inheritance diagram for lldb_private::RangeArray< B, S, N >:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::RangeArray< B, S, N >:
Collaboration graph
[legend]

Public Types

typedef B BaseType
 
typedef S SizeType
 
typedef Range< B, S > Entry
 
typedef llvm::SmallVector< Entry, N > Collection
 

Public Member Functions

 RangeArray ()=default
 
 ~RangeArray ()=default
 
void Append (const Entry &entry)
 
void Append (B base, S size)
 
bool RemoveEntrtAtIndex (uint32_t idx)
 
void Sort ()
 
void CombineConsecutiveRanges ()
 
BaseType GetMinRangeBase (BaseType fail_value) const
 
BaseType GetMaxRangeEnd (BaseType fail_value) const
 
void Slide (BaseType slide)
 
void Clear ()
 
bool IsEmpty () const
 
size_t GetSize () const
 
const EntryGetEntryAtIndex (size_t i) const
 
const EntryGetEntryRef (size_t i) const
 
EntryBack ()
 
const EntryBack () const
 
uint32_t FindEntryIndexThatContains (B addr) const
 
const EntryFindEntryThatContains (B addr) const
 
const EntryFindEntryThatContains (const Entry &range) const
 

Static Public Member Functions

static bool BaseLessThan (const Entry &lhs, const Entry &rhs)
 

Protected Attributes

Collection m_entries
 

Detailed Description

template<typename B, typename S, unsigned N>
class lldb_private::RangeArray< B, S, N >

Definition at line 128 of file RangeMap.h.

Member Typedef Documentation

◆ BaseType

template<typename B, typename S, unsigned N>
typedef B lldb_private::RangeArray< B, S, N >::BaseType

Definition at line 130 of file RangeMap.h.

◆ Collection

template<typename B, typename S, unsigned N>
typedef llvm::SmallVector<Entry, N> lldb_private::RangeArray< B, S, N >::Collection

Definition at line 133 of file RangeMap.h.

◆ Entry

template<typename B, typename S, unsigned N>
typedef Range<B, S> lldb_private::RangeArray< B, S, N >::Entry

Definition at line 132 of file RangeMap.h.

◆ SizeType

template<typename B, typename S, unsigned N>
typedef S lldb_private::RangeArray< B, S, N >::SizeType

Definition at line 131 of file RangeMap.h.

Constructor & Destructor Documentation

◆ RangeArray()

template<typename B, typename S, unsigned N>
lldb_private::RangeArray< B, S, N >::RangeArray ( )
default

◆ ~RangeArray()

template<typename B, typename S, unsigned N>
lldb_private::RangeArray< B, S, N >::~RangeArray ( )
default

Member Function Documentation

◆ Append() [1/2]

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::Append ( const Entry entry)
inline

◆ Append() [2/2]

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::Append ( base,
size 
)
inline

Definition at line 141 of file RangeMap.h.

◆ Back() [1/2]

template<typename B, typename S, unsigned N>
Entry* lldb_private::RangeArray< B, S, N >::Back ( )
inline

Definition at line 251 of file RangeMap.h.

◆ Back() [2/2]

template<typename B, typename S, unsigned N>
const Entry* lldb_private::RangeArray< B, S, N >::Back ( ) const
inline

Definition at line 253 of file RangeMap.h.

◆ BaseLessThan()

template<typename B, typename S, unsigned N>
static bool lldb_private::RangeArray< B, S, N >::BaseLessThan ( const Entry lhs,
const Entry rhs 
)
inlinestatic

Definition at line 257 of file RangeMap.h.

◆ Clear()

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::Clear ( )
inline

◆ CombineConsecutiveRanges()

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::CombineConsecutiveRanges ( )
inline

Definition at line 168 of file RangeMap.h.

Referenced by lldb_private::Block::FinalizeRanges().

◆ FindEntryIndexThatContains()

template<typename B, typename S, unsigned N>
uint32_t lldb_private::RangeArray< B, S, N >::FindEntryIndexThatContains ( addr) const
inline

◆ FindEntryThatContains() [1/2]

template<typename B, typename S, unsigned N>
const Entry* lldb_private::RangeArray< B, S, N >::FindEntryThatContains ( addr) const
inline

◆ FindEntryThatContains() [2/2]

template<typename B, typename S, unsigned N>
const Entry* lldb_private::RangeArray< B, S, N >::FindEntryThatContains ( const Entry range) const
inline

Definition at line 306 of file RangeMap.h.

◆ GetEntryAtIndex()

template<typename B, typename S, unsigned N>
const Entry* lldb_private::RangeArray< B, S, N >::GetEntryAtIndex ( size_t  i) const
inline

Definition at line 243 of file RangeMap.h.

Referenced by lldb_private::MemoryCache::RemoveInvalidRange().

◆ GetEntryRef()

template<typename B, typename S, unsigned N>
const Entry& lldb_private::RangeArray< B, S, N >::GetEntryRef ( size_t  i) const
inline

◆ GetMaxRangeEnd()

template<typename B, typename S, unsigned N>
BaseType lldb_private::RangeArray< B, S, N >::GetMaxRangeEnd ( BaseType  fail_value) const
inline

Definition at line 220 of file RangeMap.h.

Referenced by DWARFASTParserClang::ParseFunctionFromDWARF().

◆ GetMinRangeBase()

template<typename B, typename S, unsigned N>
BaseType lldb_private::RangeArray< B, S, N >::GetMinRangeBase ( BaseType  fail_value) const
inline

◆ GetSize()

template<typename B, typename S, unsigned N>
size_t lldb_private::RangeArray< B, S, N >::GetSize ( ) const
inline

◆ IsEmpty()

template<typename B, typename S, unsigned N>
bool lldb_private::RangeArray< B, S, N >::IsEmpty ( ) const
inline

◆ RemoveEntrtAtIndex()

template<typename B, typename S, unsigned N>
bool lldb_private::RangeArray< B, S, N >::RemoveEntrtAtIndex ( uint32_t  idx)
inline

Definition at line 143 of file RangeMap.h.

Referenced by lldb_private::MemoryCache::RemoveInvalidRange().

◆ Slide()

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::Slide ( BaseType  slide)
inline

Definition at line 231 of file RangeMap.h.

Referenced by DWARFDebugRanges::FindRanges().

◆ Sort()

template<typename B, typename S, unsigned N>
void lldb_private::RangeArray< B, S, N >::Sort ( )
inline

Member Data Documentation

◆ m_entries

template<typename B, typename S, unsigned N>
Collection lldb_private::RangeArray< B, S, N >::m_entries
protected

Definition at line 329 of file RangeMap.h.


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