Git 2.32
[git] / list-objects.h
1 #ifndef LIST_OBJECTS_H
2 #define LIST_OBJECTS_H
3
4 struct commit;
5 struct object;
6 struct rev_info;
7
8 typedef void (*show_commit_fn)(struct commit *, void *);
9 typedef void (*show_object_fn)(struct object *, const char *, void *);
10 void traverse_commit_list(struct rev_info *, show_commit_fn, show_object_fn, void *);
11
12 typedef void (*show_edge_fn)(struct commit *);
13 void mark_edges_uninteresting(struct rev_info *revs,
14                               show_edge_fn show_edge,
15                               int sparse);
16
17 struct oidset;
18 struct list_objects_filter_options;
19
20 void traverse_commit_list_filtered(
21         struct list_objects_filter_options *filter_options,
22         struct rev_info *revs,
23         show_commit_fn show_commit,
24         show_object_fn show_object,
25         void *show_data,
26         struct oidset *omitted);
27
28 #endif /* LIST_OBJECTS_H */