(p: Option<NonNull<Node<K, V>>>, results: &mut Vec<K>)
| 204 | { |
| 205 | let mut results = vec![]; |
| 206 | unsafe fn visitor<K, V>(p: Option<NonNull<Node<K, V>>>, results: &mut Vec<K>) |
| 207 | where |
| 208 | K: Copy, |
| 209 | { |
| 210 | if let Some(node) = p { |
| 211 | results.push(node.as_ref().key); |
| 212 | visitor(node.as_ref().left, results); |
| 213 | visitor(node.as_ref().right, results); |
| 214 | } |
| 215 | } |
| 216 | visitor(tree.root, &mut results); |
| 217 | results |
| 218 | } |