Loading...
Searching...
No Matches
GenericRangeMap< T > Class Template Reference

Public Member Functions

 GenericRangeMap ()
 GenericRangeMap (const vector< GenericRange< T > > &ranges)
 GenericRangeMap (const vector< GenericRange< T > > &ranges, std::function< void(vector< T > &)> orderingStrategy)
const vector< GenericRange< T > > & GetSourceRanges () const
const vector< GenericRange< T > > & GetRanges () const
const vector< T > & GetItemsAt (uint64_t addr) const
const GenericRange< T > & GetGenericRangeAt (uint64_t addr) const
GenericRange< T > & GetMutableGenericRangeAt (uint64_t addr)
std::optional< std::pair< uint64_t, uint64_t > > GetNextValidRange (uint64_t addr, std::function< bool(const GenericRange< T > &)> predicate) const
std::optional< std::pair< uint64_t, uint64_t > > GetPreviousValidRange (uint64_t addr, std::function< bool(const GenericRange< T > &)> predicate) const

Static Public Member Functions

static void flatten (vector< GenericRange< T > > &intervals)

Constructor & Destructor Documentation

◆ GenericRangeMap() [1/3]

template<typename T>
GenericRangeMap< T >::GenericRangeMap ( )
inline

◆ GenericRangeMap() [2/3]

template<typename T>
GenericRangeMap< T >::GenericRangeMap ( const vector< GenericRange< T > > & ranges)
inline

◆ GenericRangeMap() [3/3]

template<typename T>
GenericRangeMap< T >::GenericRangeMap ( const vector< GenericRange< T > > & ranges,
std::function< void(vector< T > &)> orderingStrategy )
inline

Member Function Documentation

◆ flatten()

template<typename T>
void GenericRangeMap< T >::flatten ( vector< GenericRange< T > > & intervals)
inlinestatic

◆ GetSourceRanges()

template<typename T>
const vector< GenericRange< T > > & GenericRangeMap< T >::GetSourceRanges ( ) const
inline

◆ GetRanges()

template<typename T>
const vector< GenericRange< T > > & GenericRangeMap< T >::GetRanges ( ) const
inline

◆ GetItemsAt()

template<typename T>
const vector< T > & GenericRangeMap< T >::GetItemsAt ( uint64_t addr) const
inline

◆ GetGenericRangeAt()

template<typename T>
const GenericRange< T > & GenericRangeMap< T >::GetGenericRangeAt ( uint64_t addr) const
inline

◆ GetMutableGenericRangeAt()

template<typename T>
GenericRange< T > & GenericRangeMap< T >::GetMutableGenericRangeAt ( uint64_t addr)
inline

◆ GetNextValidRange()

template<typename T>
std::optional< std::pair< uint64_t, uint64_t > > GenericRangeMap< T >::GetNextValidRange ( uint64_t addr,
std::function< bool(const GenericRange< T > &)> predicate ) const
inline

◆ GetPreviousValidRange()

template<typename T>
std::optional< std::pair< uint64_t, uint64_t > > GenericRangeMap< T >::GetPreviousValidRange ( uint64_t addr,
std::function< bool(const GenericRange< T > &)> predicate ) const
inline