]>
Commit | Line | Data |
---|---|---|
902bb364 JK |
1 | #ifndef SHA1_ARRAY_H |
2 | #define SHA1_ARRAY_H | |
3 | ||
4 | struct sha1_array { | |
5 | unsigned char (*sha1)[20]; | |
6 | int nr; | |
7 | int alloc; | |
8 | int sorted; | |
9 | }; | |
10 | ||
11 | #define SHA1_ARRAY_INIT { NULL, 0, 0, 0 } | |
12 | ||
13 | void sha1_array_append(struct sha1_array *array, const unsigned char *sha1); | |
14 | void sha1_array_sort(struct sha1_array *array); | |
15 | int sha1_array_lookup(struct sha1_array *array, const unsigned char *sha1); | |
16 | void sha1_array_clear(struct sha1_array *array); | |
17 | ||
cff38a5e JK |
18 | typedef void (*for_each_sha1_fn)(const unsigned char sha1[20], |
19 | void *data); | |
20 | void sha1_array_for_each_unique(struct sha1_array *array, | |
21 | for_each_sha1_fn fn, | |
22 | void *data); | |
23 | ||
902bb364 | 24 | #endif /* SHA1_ARRAY_H */ |