pkg/adt/interval_tree.go
func (ivt *IntervalTree) Visit(ivl Interval, ivv IntervalVisitor) {
	ivt.root.visit(&ivl, func(n *intervalNode) bool { return ivv(&n.iv) })
}
func (ivt *IntervalTree) Visit(ivl Interval, ivv IntervalVisitor) {
	ivt.root.visit(&ivl, func(n *intervalNode) bool { return ivv(&n.iv) })
}
func ( ivt * IntervalTree ) Visit ( ivl Interval , ivv IntervalVisitor ) { ivt . root . visit ( & ivl , func ( n * intervalNode ) bool { return ivv ( & n . iv ) } ) }
// Visit calls a visitor function on every tree node intersecting the given interval.
// It will visit each interval [x, y) in ascending order sorted on x.
Visit calls a visitor function on every tree node intersecting the given interval . It will visit each interval [ x y ) in ascending order sorted on x .