pub fn walk_path<'v, V: Visitor<'v>>(
    visitor: &mut V,
    path: &Path<'v>
) -> V::Result