Returns self after adding the interval and balancing.
(self, interval)
| 203 | return result |
| 204 | |
| 205 | def add(self, interval): |
| 206 | """ |
| 207 | Returns self after adding the interval and balancing. |
| 208 | """ |
| 209 | if self.center_hit(interval): |
| 210 | self.s_center.add(interval) |
| 211 | return self |
| 212 | else: |
| 213 | direction = self.hit_branch(interval) |
| 214 | if not self[direction]: |
| 215 | self[direction] = Node.from_interval(interval) |
| 216 | self.refresh_balance() |
| 217 | return self |
| 218 | else: |
| 219 | self[direction] = self[direction].add(interval) |
| 220 | return self.rotate() |
| 221 | |
| 222 | def remove(self, interval): |
| 223 | """ |