Permalink
Cannot retrieve contributors at this time
47 lines (38 sloc)
1.24 KB
| #ifndef PATCH_IDS_H | |
| #define PATCH_IDS_H | |
| #include "diff.h" | |
| #include "hashmap.h" | |
| struct commit; | |
| struct object_id; | |
| struct repository; | |
| struct patch_id { | |
| struct hashmap_entry ent; | |
| struct object_id patch_id; | |
| struct commit *commit; | |
| }; | |
| struct patch_ids { | |
| struct hashmap patches; | |
| struct diff_options diffopts; | |
| }; | |
| int commit_patch_id(struct commit *commit, struct diff_options *options, | |
| struct object_id *oid, int, int); | |
| int init_patch_ids(struct repository *, struct patch_ids *); | |
| int free_patch_ids(struct patch_ids *); | |
| /* Add a patch_id for a single commit to the set. */ | |
| struct patch_id *add_commit_patch_id(struct commit *, struct patch_ids *); | |
| /* Returns true if the patch-id of "commit" is present in the set. */ | |
| int has_commit_patch_id(struct commit *commit, struct patch_ids *); | |
| /* | |
| * Iterate over all commits in the set whose patch id matches that of | |
| * "commit", like: | |
| * | |
| * struct patch_id *cur; | |
| * for (cur = patch_id_iter_first(commit, ids); | |
| * cur; | |
| * cur = patch_id_iter_next(cur, ids) { | |
| * ... look at cur->commit | |
| * } | |
| */ | |
| struct patch_id *patch_id_iter_first(struct commit *commit, struct patch_ids *); | |
| struct patch_id *patch_id_iter_next(struct patch_id *cur, struct patch_ids *); | |
| #endif /* PATCH_IDS_H */ |