| 400 | } |
| 401 | |
| 402 | void make_root() { |
| 403 | expose(); |
| 404 | |
| 405 | top_tree_node* rt = this; |
| 406 | while (rt->p) { |
| 407 | assert(rt->d() == 1); |
| 408 | rt = rt->p; |
| 409 | } |
| 410 | rt->do_flip_path(); |
| 411 | rt->meld_path_end(); |
| 412 | |
| 413 | expose(); |
| 414 | |
| 415 | assert(!p); |
| 416 | } |
| 417 | |
| 418 | // link v2 as a child of v1 with edge e |
| 419 | friend void link(top_tree_node* e, top_tree_node* v1, top_tree_node* v2) { |
no test coverage detected