pack-objects: further work on internal rev-list logic.

This teaches the internal rev-list logic to understand options
that are needed for pack handling: --all, --unpacked, and --thin.

It also moves two functions from builtin-rev-list to list-objects
so that the two programs can share more code.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano
2006-09-06 01:42:23 -07:00
parent b5d97e6b0a
commit 8d1d8f83b5
4 changed files with 85 additions and 93 deletions

View File

@ -1,8 +1,12 @@
#ifndef LIST_OBJECTS_H
#define LIST_OBJECTS_H
void traverse_commit_list(struct rev_info *revs,
void (*show_commit)(struct commit *),
void (*show_object)(struct object_array_entry *));
typedef void (*show_commit_fn)(struct commit *);
typedef void (*show_object_fn)(struct object_array_entry *);
typedef void (*show_edge_fn)(struct commit *);
void traverse_commit_list(struct rev_info *revs, show_commit_fn, show_object_fn);
void mark_edges_uninteresting(struct commit_list *, struct rev_info *, show_edge_fn);
#endif