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

#include <VMRange.h>

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

Public Types

typedef std::vector< VMRangecollection
 
typedef collection::iterator iterator
 
typedef collection::const_iterator const_iterator
 

Public Member Functions

 VMRange ()=default
 
 VMRange (lldb::addr_t start_addr, lldb::addr_t end_addr)
 
 ~VMRange ()=default
 
void Clear ()
 
void Reset (lldb::addr_t start_addr, lldb::addr_t end_addr)
 
void SetBaseAddress (lldb::addr_t base_addr)
 
void SetEndAddress (lldb::addr_t end_addr)
 
lldb::addr_t GetByteSize () const
 
void SetByteSize (lldb::addr_t byte_size)
 
lldb::addr_t GetBaseAddress () const
 
lldb::addr_t GetEndAddress () const
 
bool IsValid () const
 
bool Contains (lldb::addr_t addr) const
 
bool Contains (const VMRange &range) const
 
void Dump (llvm::raw_ostream &s, lldb::addr_t base_addr=0, uint32_t addr_width=8) const
 

Static Public Member Functions

static bool ContainsValue (const VMRange::collection &coll, lldb::addr_t value)
 
static bool ContainsRange (const VMRange::collection &coll, const VMRange &range)
 

Protected Attributes

lldb::addr_t m_base_addr = 0
 
lldb::addr_t m_byte_size = 0
 

Detailed Description

Definition at line 23 of file VMRange.h.

Member Typedef Documentation

◆ collection

Definition at line 25 of file VMRange.h.

◆ const_iterator

typedef collection::const_iterator lldb_private::VMRange::const_iterator

Definition at line 27 of file VMRange.h.

◆ iterator

typedef collection::iterator lldb_private::VMRange::iterator

Definition at line 26 of file VMRange.h.

Constructor & Destructor Documentation

◆ VMRange() [1/2]

lldb_private::VMRange::VMRange ( )
default

◆ VMRange() [2/2]

lldb_private::VMRange::VMRange ( lldb::addr_t  start_addr,
lldb::addr_t  end_addr 
)
inline

Definition at line 31 of file VMRange.h.

◆ ~VMRange()

lldb_private::VMRange::~VMRange ( )
default

Member Function Documentation

◆ Clear()

void lldb_private::VMRange::Clear ( )
inline

Definition at line 37 of file VMRange.h.

References m_base_addr, and m_byte_size.

◆ Contains() [1/2]

bool lldb_private::VMRange::Contains ( const VMRange range) const
inline

Definition at line 73 of file VMRange.h.

References Contains(), GetBaseAddress(), and GetEndAddress().

◆ Contains() [2/2]

bool lldb_private::VMRange::Contains ( lldb::addr_t  addr) const
inline

Definition at line 69 of file VMRange.h.

References GetBaseAddress(), and GetEndAddress().

Referenced by Contains(), ContainsRange(), and ContainsValue().

◆ ContainsRange()

bool VMRange::ContainsRange ( const VMRange::collection coll,
const VMRange range 
)
static

Definition at line 31 of file VMRange.cpp.

References Contains().

◆ ContainsValue()

bool VMRange::ContainsValue ( const VMRange::collection coll,
lldb::addr_t  value 
)
static

Definition at line 24 of file VMRange.cpp.

References Contains().

◆ Dump()

void VMRange::Dump ( llvm::raw_ostream &  s,
lldb::addr_t  base_addr = 0,
uint32_t  addr_width = 8 
) const

Definition at line 38 of file VMRange.cpp.

References lldb_private::DumpAddressRange().

Referenced by lldb_private::Section::Dump().

◆ GetBaseAddress()

lldb::addr_t lldb_private::VMRange::GetBaseAddress ( ) const
inline

◆ GetByteSize()

lldb::addr_t lldb_private::VMRange::GetByteSize ( ) const
inline

Definition at line 59 of file VMRange.h.

References m_byte_size.

◆ GetEndAddress()

lldb::addr_t lldb_private::VMRange::GetEndAddress ( ) const
inline

Definition at line 65 of file VMRange.h.

References GetBaseAddress(), and m_byte_size.

Referenced by Contains(), lldb_private::operator<(), and lldb_private::operator==().

◆ IsValid()

bool lldb_private::VMRange::IsValid ( ) const
inline

Definition at line 67 of file VMRange.h.

References m_byte_size.

◆ Reset()

void lldb_private::VMRange::Reset ( lldb::addr_t  start_addr,
lldb::addr_t  end_addr 
)
inline

Definition at line 43 of file VMRange.h.

References SetBaseAddress(), and SetEndAddress().

◆ SetBaseAddress()

void lldb_private::VMRange::SetBaseAddress ( lldb::addr_t  base_addr)
inline

Definition at line 49 of file VMRange.h.

References m_base_addr.

Referenced by Reset().

◆ SetByteSize()

void lldb_private::VMRange::SetByteSize ( lldb::addr_t  byte_size)
inline

Definition at line 61 of file VMRange.h.

References m_byte_size.

◆ SetEndAddress()

void lldb_private::VMRange::SetEndAddress ( lldb::addr_t  end_addr)
inline

Definition at line 51 of file VMRange.h.

References GetBaseAddress(), and m_byte_size.

Referenced by Reset().

Member Data Documentation

◆ m_base_addr

lldb::addr_t lldb_private::VMRange::m_base_addr = 0
protected

Definition at line 91 of file VMRange.h.

Referenced by Clear(), GetBaseAddress(), and SetBaseAddress().

◆ m_byte_size

lldb::addr_t lldb_private::VMRange::m_byte_size = 0
protected

Definition at line 92 of file VMRange.h.

Referenced by Clear(), GetByteSize(), GetEndAddress(), IsValid(), SetByteSize(), and SetEndAddress().


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