bitstring_trees/tree/walk_dir.rs
1/// Remember which path was taken to reach this node from the parent in [`WalkMutOwned`] and [`WalkMutBorrowed`].
2///
3/// [`WalkMutOwned`]: super::WalkMutOwned
4/// [`WalkMutBorrowed`]: super::WalkMutBorrowed
5#[derive(Clone, Copy, Debug, PartialEq, Eq)]
6pub enum WalkedDirection {
7 /// Entered first node in tree
8 Down,
9 /// Entered left node
10 Left,
11 /// Entered right node
12 Right,
13}
14
15impl WalkedDirection {
16 /// [`Self::Right`] if `side` is true otherwise [`Self::Left`]
17 pub fn from_side(side: bool) -> Self {
18 if side {
19 Self::Right
20 } else {
21 Self::Left
22 }
23 }
24}
25
26impl From<WalkedDirection> for () {
27 fn from(_: WalkedDirection) -> Self {}
28}