pub fn fold_index<F>(f: &mut F, node: Index) -> Index where
    F: Fold + ?Sized