static struct interval_node *interval_prev(struct interval_node *node) { if (!node) return NULL; if (node->in_left) return interval_last(node->in_left); while (node->in_parent && node_is_left_child(node)) node = node->in_parent; return node->in_parent; }
static struct interval_node *interval_prev(struct interval_node *node) { ENTRY; if (!node) RETURN(NULL); if (node->in_left) RETURN(interval_last(node->in_left)); while (node->in_parent && node_is_left_child(node)) node = node->in_parent; RETURN(node->in_parent); }