class AddressRanges
Declaration
class AddressRanges { /* full declaration omitted */ };
Description
The AddressRanges class helps normalize address range collections. This class keeps a sorted vector of AddressRange objects and can perform insertions and searches efficiently. The address ranges are always sorted and never contain any invalid or empty address ranges. Intersecting([100,200), [150,300)) and adjacent([100,200), [200,300)) address ranges are combined during insertion.
Declared at: llvm/include/llvm/ADT/AddressRanges.h:54
Member Variables
- protected llvm::AddressRanges::Collection Ranges
Method Overview
- public Collection::const_iterator begin() const
- public void clear()
- public bool contains(uint64_t Addr) const
- public bool contains(llvm::AddressRange Range) const
- public bool empty() const
- public Collection::const_iterator end() const
- protected Collection::const_iterator find(uint64_t Addr) const
- protected Collection::const_iterator find(llvm::AddressRange Range) const
- public Optional<llvm::AddressRange> getRangeThatContains(uint64_t Addr) const
- public Collection::const_iterator insert(llvm::AddressRange Range)
- public void reserve(size_t Capacity)
- public size_t size() const
Methods
¶Collection::const_iterator begin() const
Collection::const_iterator begin() const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:83
¶void clear()
void clear()
Declared at: llvm/include/llvm/ADT/AddressRanges.h:60
¶bool contains(uint64_t Addr) const
bool contains(uint64_t Addr) const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:62
Parameters
- uint64_t Addr
¶bool contains(llvm::AddressRange Range) const
bool contains(llvm::AddressRange Range) const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:63
Parameters
- llvm::AddressRange Range
¶bool empty() const
bool empty() const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:61
¶Collection::const_iterator end() const
Collection::const_iterator end() const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:84
¶Collection::const_iterator find(
uint64_t Addr) const
Collection::const_iterator find(
uint64_t Addr) const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:87
Parameters
- uint64_t Addr
¶Collection::const_iterator find(
llvm::AddressRange Range) const
Collection::const_iterator find(
llvm::AddressRange Range) const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:88
Parameters
- llvm::AddressRange Range
¶Optional<llvm::AddressRange> getRangeThatContains(
uint64_t Addr) const
Optional<llvm::AddressRange> getRangeThatContains(
uint64_t Addr) const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:66
Parameters
- uint64_t Addr
¶Collection::const_iterator insert(
llvm::AddressRange Range)
Collection::const_iterator insert(
llvm::AddressRange Range)
Declared at: llvm/include/llvm/ADT/AddressRanges.h:73
Parameters
- llvm::AddressRange Range
¶void reserve(size_t Capacity)
void reserve(size_t Capacity)
Declared at: llvm/include/llvm/ADT/AddressRanges.h:74
Parameters
- size_t Capacity
¶size_t size() const
size_t size() const
Declared at: llvm/include/llvm/ADT/AddressRanges.h:75