pub fn walk_path_segment<'a, V: Visitor<'a>>(
    visitor: &mut V,
    segment: &'a PathSegment
)