| 10878 | |
| 10879 | //Visit half nodes in order |
| 10880 | function doVisitHalf(lo, compare, visit, node) { |
| 10881 | var l = compare(lo, node.key) |
| 10882 | if(l <= 0) { |
| 10883 | if(node.left) { |
| 10884 | var v = doVisitHalf(lo, compare, visit, node.left) |
| 10885 | if(v) { return v } |
| 10886 | } |
| 10887 | var v = visit(node.key, node.value) |
| 10888 | if(v) { return v } |
| 10889 | } |
| 10890 | if(node.right) { |
| 10891 | return doVisitHalf(lo, compare, visit, node.right) |
| 10892 | } |
| 10893 | } |
| 10894 | |
| 10895 | //Visit all nodes within a range |
| 10896 | function doVisit(lo, hi, compare, visit, node) { |