git-commit-vandalism/refs
Michael Haggerty ba1c052fa6 ref_store: implement refs_peel_ref() generically
We're about to stop storing packed refs in a `ref_cache`. That means
that the only way we have left to optimize `peel_ref()` is by checking
whether the reference being peeled is the one currently being iterated
over (in `current_ref_iter`), and if so, using `ref_iterator_peel()`.
But this can be done generically; it doesn't have to be implemented
per-backend.

So implement `refs_peel_ref()` in `refs.c` and remove the `peel_ref()`
method from the refs API.

This removes the last callers of a couple of functions, so delete
them. More cleanup to come...

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2017-09-25 18:02:46 +09:00
..
files-backend.c ref_store: implement refs_peel_ref() generically 2017-09-25 18:02:46 +09:00
iterator.c prefix_ref_iterator: break when we leave the prefix 2017-09-14 15:19:07 +09:00
packed-backend.c ref_store: implement refs_peel_ref() generically 2017-09-25 18:02:46 +09:00
packed-backend.h packed-backend: rip out some now-unused code 2017-09-09 03:18:04 +09:00
ref-cache.c ref_iterator: keep track of whether the iterator output is ordered 2017-09-14 15:19:07 +09:00
ref-cache.h ref_iterator: keep track of whether the iterator output is ordered 2017-09-14 15:19:07 +09:00
refs-internal.h ref_store: implement refs_peel_ref() generically 2017-09-25 18:02:46 +09:00