use crate::map_tree;
use crate::tree::NodeId;
#[derive(Copy, Clone, Debug)]
pub enum Location {
AfterSibling(NodeId),
FirstChildOf(NodeId),
}
impl Location {
pub fn into_mapped<NeyKey>(
self,
mapper: impl FnOnce(NodeId) -> NeyKey,
) -> map_tree::Location<NeyKey> {
match self {
Location::AfterSibling(id) => map_tree::Location::AfterSibling((mapper)(id)),
Location::FirstChildOf(id) => map_tree::Location::FirstChildOf((mapper)(id)),
}
}
}