]>
Commit | Line | Data |
---|---|---|
ac3d33df JK |
1 | /* |
2 | * Copyright (C) the libgit2 contributors. All rights reserved. | |
3 | * | |
4 | * This file is part of libgit2, distributed under the GNU GPL v2 with | |
5 | * a Linking Exception. For full terms see the included COPYING file. | |
6 | */ | |
7 | #ifndef INCLUDE_mailmap_h__ | |
8 | #define INCLUDE_mailmap_h__ | |
9 | ||
10 | #include "git2/mailmap.h" | |
11 | #include "vector.h" | |
12 | ||
13 | /* | |
14 | * A mailmap is stored as a sorted vector of 'git_mailmap_entry's. These entries | |
15 | * are sorted first by 'replace_email', and then by 'replace_name'. NULL | |
16 | * replace_names are ordered first. | |
17 | * | |
18 | * Looking up a name and email in the mailmap is done with a binary search. | |
19 | */ | |
20 | struct git_mailmap { | |
21 | git_vector entries; | |
22 | }; | |
23 | ||
24 | /* Single entry parsed from a mailmap */ | |
25 | typedef struct git_mailmap_entry { | |
26 | char *real_name; /**< the real name (may be NULL) */ | |
27 | char *real_email; /**< the real email (may be NULL) */ | |
28 | char *replace_name; /**< the name to replace (may be NULL) */ | |
29 | char *replace_email; /**< the email to replace */ | |
30 | } git_mailmap_entry; | |
31 | ||
32 | const git_mailmap_entry *git_mailmap_entry_lookup( | |
33 | const git_mailmap *mm, const char *name, const char *email); | |
34 | ||
35 | #endif |