From eda726cfb5ea44659e471ba10aee21f16ce2e800 Mon Sep 17 00:00:00 2001 From: joshaber Date: Tue, 8 Dec 2015 11:34:00 -0500 Subject: Use a typedef for the submodule_foreach callback. This fits with the style for the rest of the project, but more importantly, makes life easier for bindings authors who auto-generate code. --- include/git2/submodule.h | 14 +++++++++++++- src/submodule.c | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/include/git2/submodule.h b/include/git2/submodule.h index 689fe4b64..96187b0e1 100644 --- a/include/git2/submodule.h +++ b/include/git2/submodule.h @@ -107,6 +107,18 @@ typedef enum { GIT_SUBMODULE_STATUS_WD_WD_MODIFIED | \ GIT_SUBMODULE_STATUS_WD_UNTRACKED)) != 0) +/** + * Function pointer to receive each submodule + * + * `sm` is the `git_submodule` currently being visited. + * + * `name` is the name of the submodule. + * + * `payload` is the value you passed to the foreach function as payload. + */ +typedef int (*git_submodule_cb)( + git_submodule *sm, const char *name, void *payload); + /** * Submodule update options structure * @@ -239,7 +251,7 @@ GIT_EXTERN(void) git_submodule_free(git_submodule *submodule); */ GIT_EXTERN(int) git_submodule_foreach( git_repository *repo, - int (*callback)(git_submodule *sm, const char *name, void *payload), + git_submodule_cb callback, void *payload); /** diff --git a/src/submodule.c b/src/submodule.c index 1148f8790..6ec4c53e1 100644 --- a/src/submodule.c +++ b/src/submodule.c @@ -495,7 +495,7 @@ cleanup: int git_submodule_foreach( git_repository *repo, - int (*callback)(git_submodule *sm, const char *name, void *payload), + git_submodule_cb callback, void *payload) { git_vector snapshot = GIT_VECTOR_INIT; -- cgit v1.2.1