An immutable interval map data structure implemented as an interval tree. Based on jgblight/im_interval_tree.
Interval maps are great for finding intervals and their associated values which overlap a given interval. This interval map supports intervals with excluded, included, and unbounded bound ends. Multiple values may be associated with the same interval.