llvm::IntervalMapOverlaps

IntervalMapOverlaps - Iterate over the overlaps of mapped intervals in two IntervalMaps. The maps may be different, but the KeyT and Traits types should be the same.

Synopsis

Declared in <llvm/ADT/IntervalMap.h>

template<
    typename MapA,
    typename MapB>
class IntervalMapOverlaps;

Description

Typical uses:

1. Test for overlap: bool overlap = IntervalMapOverlaps(a, b).valid();

2. Enumerate overlaps: for (IntervalMapOverlaps I(a, b); I.valid() ; ++I) { ... }

Member Functions

NameDescription
IntervalMapOverlaps [constructor]IntervalMapOverlaps - Create an iterator for the overlaps of a and b.
a a - access the left hand side in the overlap.
advanceTo advanceTo - Move to the first overlapping interval with stopLess(x, stop()).
b b - access the right hand side in the overlap.
operator++ Preincrement - Move to the next overlap.
skipA skipA - Move to the next overlap that doesn't involve a().
skipB skipB - Move to the next overlap that doesn't involve b().
start start - Beginning of the overlapping interval.
stop stop - End of the overlapping interval.
valid valid - Return true if iterator is at an overlap.