Permalink
Cannot retrieve contributors at this time
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
47 lines (38 sloc)
1.24 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#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 */ |