12 lines
540 B
Rust
12 lines
540 B
Rust
pub unsafe trait BinTreeContext {
|
|
type NodeRef: Sized;
|
|
|
|
fn getParent(&self, node: Self::NodeRef) -> Option<Self::NodeRef>;
|
|
fn getLeftChild(&self, node: Self::NodeRef) -> Option<Self::NodeRef>;
|
|
fn getRightChild(&self, node: Self::NodeRef) -> Option<Self::NodeRef>;
|
|
|
|
fn setParent(&mut self, node: Self::NodeRef, newParent: Option<Self::NodeRef>);
|
|
fn setLeftChild(&mut self, node: Self::NodeRef, newChild: Option<Self::NodeRef>);
|
|
fn setRightChild(&mut self, node: Self::NodeRef, newChild: Option<Self::NodeRef>);
|
|
}
|