pub trait BinaryTreesMutable<'a>: BinaryTreesEmpty<'a> + BinaryTreesTreeOf<'a> + WithComparator {
// Required method
fn join_key(
self,
tl: Self::Tree,
key: Self::Key,
tr: Self::Tree
) -> BTWrap<'a, Self, Self::Node>;
// Provided methods
fn join_key_tree(
self,
tl: Self::Tree,
key: Self::Key,
tr: Self::Tree
) -> BTWrap<'a, Self, Self::Tree> { ... }
fn join(
self,
tl: Self::Tree,
tr: Self::Tree
) -> BTWrap<'a, Self, Self::Tree> { ... }
fn split_key_node(
self,
node: Self::Node,
key: Self::Key
) -> BTWrap<'a, Self, KeySplit<Self>> { ... }
fn split_key(
self,
tree: Self::Tree,
key: Self::Key
) -> BTWrap<'a, Self, KeySplit<Self>> { ... }
fn add(
self,
tree: Self::Tree,
key: Self::Key
) -> BTWrap<'a, Self, Self::Node> { ... }
fn add_tree(
self,
tree: Self::Tree,
key: Self::Key
) -> BTWrap<'a, Self, Self::Tree> { ... }
fn remove(
self,
tree: Self::Tree,
key: Self::Key
) -> BTWrap<'a, Self, Self::Tree> { ... }
}