LLDB mainline
Public Types | Public Member Functions | Public Attributes | List of all members
lldb_private::Range< B, S > Struct Template Reference

#include <RangeMap.h>

Inheritance diagram for lldb_private::Range< B, S >:
Inheritance graph
[legend]

Public Types

typedef B BaseType
 
typedef S SizeType
 

Public Member Functions

 Range ()
 
 Range (BaseType b, SizeType s)
 
void Clear (BaseType b=0)
 
BaseType GetRangeBase () const
 
void SetRangeBase (BaseType b)
 Set the start value for the range, and keep the same size.
 
void Slide (BaseType slide)
 
void ShrinkFront (S s)
 
bool Union (const Range &rhs)
 
Range Intersect (const Range &rhs) const
 
BaseType GetRangeEnd () const
 
void SetRangeEnd (BaseType end)
 
SizeType GetByteSize () const
 
void SetByteSize (SizeType s)
 
bool IsValid () const
 
bool Contains (BaseType r) const
 
bool ContainsEndInclusive (BaseType r) const
 
bool Contains (const Range &range) const
 
bool DoesAdjoinOrIntersect (const Range &rhs) const
 
bool DoesIntersect (const Range &rhs) const
 
bool operator< (const Range &rhs) const
 
bool operator== (const Range &rhs) const
 
bool operator!= (const Range &rhs) const
 

Public Attributes

BaseType base
 
SizeType size
 

Detailed Description

template<typename B, typename S>
struct lldb_private::Range< B, S >

Definition at line 29 of file RangeMap.h.

Member Typedef Documentation

◆ BaseType

template<typename B , typename S >
typedef B lldb_private::Range< B, S >::BaseType

Definition at line 30 of file RangeMap.h.

◆ SizeType

template<typename B , typename S >
typedef S lldb_private::Range< B, S >::SizeType

Definition at line 31 of file RangeMap.h.

Constructor & Destructor Documentation

◆ Range() [1/2]

template<typename B , typename S >
lldb_private::Range< B, S >::Range ( )
inline

Definition at line 36 of file RangeMap.h.

◆ Range() [2/2]

template<typename B , typename S >
lldb_private::Range< B, S >::Range ( BaseType  b,
SizeType  s 
)
inline

Definition at line 38 of file RangeMap.h.

Member Function Documentation

◆ Clear()

template<typename B , typename S >
void lldb_private::Range< B, S >::Clear ( BaseType  b = 0)
inline

◆ Contains() [1/2]

template<typename B , typename S >
bool lldb_private::Range< B, S >::Contains ( BaseType  r) const
inline

◆ Contains() [2/2]

template<typename B , typename S >
bool lldb_private::Range< B, S >::Contains ( const Range< B, S > &  range) const
inline

◆ ContainsEndInclusive()

template<typename B , typename S >
bool lldb_private::Range< B, S >::ContainsEndInclusive ( BaseType  r) const
inline

◆ DoesAdjoinOrIntersect()

template<typename B , typename S >
bool lldb_private::Range< B, S >::DoesAdjoinOrIntersect ( const Range< B, S > &  rhs) const
inline

◆ DoesIntersect()

template<typename B , typename S >
bool lldb_private::Range< B, S >::DoesIntersect ( const Range< B, S > &  rhs) const
inline

◆ GetByteSize()

template<typename B , typename S >
SizeType lldb_private::Range< B, S >::GetByteSize ( ) const
inline

◆ GetRangeBase()

template<typename B , typename S >
BaseType lldb_private::Range< B, S >::GetRangeBase ( ) const
inline

Definition at line 45 of file RangeMap.h.

References lldb_private::Range< B, S >::base.

Referenced by ProcessElfCore::AddAddressRangeFromLoadSegment(), lldb_private::Process::AddInvalidMemoryRegion(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::AddOSOARanges(), lldb_private::Block::AddRange(), lldb_private::RangeVector< B, S, N >::BaseLessThan(), lldb_private::RangeDataVector< B, S, T, N, Compare >::BaseLessThan(), lldb_private::plugin::dwarf::DWARFCompileUnit::BuildAddressRangeTable(), lldb_private::minidump::ProcessMinidump::BuildMemoryRegions(), lldb_private::Range< B, S >::Contains(), lldb_private::Range< B, S >::ContainsEndInclusive(), CreateCoreFileMemoryRange(), ProcessMachCore::CreateMemoryRegions(), lldb_private::Range< B, S >::DoesAdjoinOrIntersect(), CommandObjectMemoryTagWrite::DoExecute(), ProcessElfCore::DoGetMemoryRegionInfo(), ProcessMachCore::DoGetMemoryRegionInfo(), ProcessElfCore::DoReadMemory(), ProcessMachCore::DoReadMemory(), lldb_private::plugin::dwarf::DWARFDebugAranges::Dump(), lldb_private::Block::Dump(), lldb_private::Block::DumpAddressRanges(), lldb_private::DWARFExpressionList::DumpLocations(), CommandObjectMemoryRegion::DumpRegion(), lldb_private::MemoryTagManagerAArch64MTE::ExpandToGranule(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::FinalizeOSOFileRanges(), findStackHelper(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::AllocatedBlock::GetBaseAddress(), lldb_private::LineTable::GetContiguousFileAddressRanges(), GetCoreFileSaveRangesStackOnly(), lldb_private::Block::GetDescription(), lldb_private::DWARFExpressionList::GetDescription(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetMemoryRegionInfo(), lldb_private::process_freebsd::NativeProcessFreeBSD::GetMemoryRegionInfo(), lldb_private::process_linux::NativeProcessLinux::GetMemoryRegionInfo(), lldb_private::process_netbsd::NativeProcessNetBSD::GetMemoryRegionInfo(), lldb_private::ScriptedProcess::GetMemoryRegions(), lldb_private::Block::GetRangeAtIndex(), lldb_private::Block::GetRangeContainingAddress(), lldb_private::Block::GetStartAddress(), lldb_private::MemoryTagMap::GetTags(), ObjectFileMachO::GetThreadContextAtIndex(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_qMemoryRegionInfo(), lldb_private::Symtab::InitAddressIndexes(), lldb_private::Range< B, S >::Intersect(), lldb_private::LineTable::LinkLineTable(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::LinkOSOAddress(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::LinkOSOFileAddress(), ProcessMachCore::LoadBinariesViaExhaustiveSearch(), ProcessMachCore::LoadBinaryViaLowmemUUID(), DynamicLoaderPOSIXDYLD::LoadModuleAtAddress(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRange(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRanges(), lldb_private::operator<(), lldb_private::plugin::dwarf::SymbolFileDWARF::ParseBlocksRecursive(), lldb_private::npdb::SymbolFileNativePDB::ParseLineTable(), lldb_private::MemoryCache::Read(), lldb_private::process_linux::NativeProcessLinux::ReadMemoryTags(), ProcessElfCore::ReadMemoryTags(), lldb_private::Process::RemoveInvalidMemoryRange(), lldb_private::MemoryCache::RemoveInvalidRange(), and lldb_private::process_linux::NativeProcessLinux::WriteMemoryTags().

◆ GetRangeEnd()

template<typename B , typename S >
BaseType lldb_private::Range< B, S >::GetRangeEnd ( ) const
inline

Definition at line 78 of file RangeMap.h.

References lldb_private::Range< B, S >::base, and lldb_private::Range< B, S >::size.

Referenced by ProcessElfCore::AddAddressRangeFromLoadSegment(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::AddOSOARanges(), lldb_private::Block::AddRange(), lldb_private::plugin::dwarf::DWARFCompileUnit::BuildAddressRangeTable(), lldb_private::minidump::ProcessMinidump::BuildMemoryRegions(), lldb_private::RangeVector< B, S, N >::CombineConsecutiveRanges(), lldb_private::Range< B, S >::Contains(), lldb_private::Range< B, S >::ContainsEndInclusive(), ProcessMachCore::CreateMemoryRegions(), lldb_private::Range< B, S >::DoesAdjoinOrIntersect(), CommandObjectMemoryRegion::DoExecute(), ProcessElfCore::DoGetMemoryRegionInfo(), ProcessMachCore::DoGetMemoryRegionInfo(), ProcessElfCore::DoReadMemory(), ProcessMachCore::DoReadMemory(), lldb_private::process_gdb_remote::ProcessGDBRemote::DoWriteMemory(), lldb_private::plugin::dwarf::DWARFDebugAranges::Dump(), lldb_private::Block::Dump(), lldb_private::Block::DumpAddressRanges(), lldb_private::DWARFExpressionList::DumpLocations(), CommandObjectMemoryRegion::DumpRegion(), lldb_private::plugin::dwarf::SymbolFileDWARFDebugMap::FinalizeOSOFileRanges(), lldb_private::RangeDataVector< B, S, T, N, Compare >::FindEntryThatContainsOrFollows(), lldb_private::IRMemoryMap::FindSpace(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::Block::GetDescription(), lldb_private::DWARFExpressionList::GetDescription(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetMemoryRegionInfo(), lldb_private::Process::GetMemoryRegions(), lldb_private::MemoryTagMap::GetTags(), lldb_private::Range< B, S >::Intersect(), lldb_private::LineTable::LinkLineTable(), ProcessMachCore::LoadBinariesViaExhaustiveSearch(), ProcessMachCore::LoadBinaryViaLowmemUUID(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRange(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRanges(), lldb_private::plugin::dwarf::SymbolFileDWARF::ParseBlocksRecursive(), ProcessElfCore::ReadMemoryTags(), lldb_private::AllocatedBlock::ReserveBlock(), and lldb_private::Range< B, S >::Union().

◆ Intersect()

template<typename B , typename S >
Range lldb_private::Range< B, S >::Intersect ( const Range< B, S > &  rhs) const
inline

◆ IsValid()

template<typename B , typename S >
bool lldb_private::Range< B, S >::IsValid ( ) const
inline

◆ operator!=()

template<typename B , typename S >
bool lldb_private::Range< B, S >::operator!= ( const Range< B, S > &  rhs) const
inline

◆ operator<()

template<typename B , typename S >
bool lldb_private::Range< B, S >::operator< ( const Range< B, S > &  rhs) const
inline

◆ operator==()

template<typename B , typename S >
bool lldb_private::Range< B, S >::operator== ( const Range< B, S > &  rhs) const
inline

◆ SetByteSize()

template<typename B , typename S >
void lldb_private::Range< B, S >::SetByteSize ( SizeType  s)
inline

◆ SetRangeBase()

template<typename B , typename S >
void lldb_private::Range< B, S >::SetRangeBase ( BaseType  b)
inline

Set the start value for the range, and keep the same size.

Definition at line 48 of file RangeMap.h.

References lldb_private::Range< B, S >::base.

Referenced by AddSectionsToRangeMap(), CreateRegionsCacheFromMemory64List(), CreateRegionsCacheFromMemoryInfoList(), CreateRegionsCacheFromMemoryList(), ProcessElfCore::DoGetMemoryRegionInfo(), ProcessMachCore::DoGetMemoryRegionInfo(), lldb_private::process_gdb_remote::ProcessGDBRemote::FlashErase(), lldb_private::LineTable::GetContiguousFileAddressRanges(), ObjectFileMachO::GetEncryptedFileRanges(), lldb_private::minidump::MinidumpParser::GetMemoryRegionInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetMemoryRegionInfo(), lldb_private::ProcessDebugger::GetMemoryRegionInfo(), lldb_private::process_freebsd::NativeProcessFreeBSD::GetMemoryRegionInfo(), lldb_private::process_linux::NativeProcessLinux::GetMemoryRegionInfo(), lldb_private::process_netbsd::NativeProcessNetBSD::GetMemoryRegionInfo(), ObjectFileMachO::GetNumThreadContexts(), lldb_private::Symtab::InitAddressIndexes(), lldb_private::Range< B, S >::Intersect(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::LoadQXferMemoryMap(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRange(), lldb_private::MemoryTagManagerAArch64MTE::MakeTaggedRanges(), lldb_private::npdb::SymbolFileNativePDB::ParseLineTable(), ParseMemoryRegionInfoFromProcMapsLine(), lldb_private::process_freebsd::NativeProcessFreeBSD::PopulateMemoryRegionCache(), and lldb_private::process_netbsd::NativeProcessNetBSD::PopulateMemoryRegionCache().

◆ SetRangeEnd()

template<typename B , typename S >
void lldb_private::Range< B, S >::SetRangeEnd ( BaseType  end)
inline

◆ ShrinkFront()

template<typename B , typename S >
void lldb_private::Range< B, S >::ShrinkFront ( s)
inline

◆ Slide()

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

Definition at line 50 of file RangeMap.h.

References lldb_private::Range< B, S >::base.

◆ Union()

template<typename B , typename S >
bool lldb_private::Range< B, S >::Union ( const Range< B, S > &  rhs)
inline

Member Data Documentation

◆ base

template<typename B , typename S >
BaseType lldb_private::Range< B, S >::base

◆ size

template<typename B , typename S >
SizeType lldb_private::Range< B, S >::size

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