summaryrefslogtreecommitdiff
path: root/include/git2/notes.h
diff options
context:
space:
mode:
authorBen Straub <bs@github.com>2012-11-26 20:09:38 -0800
committerBen Straub <bs@github.com>2012-11-27 13:18:30 -0800
commitde5596bfd683273d60e8865626a064c6c1ece321 (patch)
tree2a70a63ef2bd58cb691f397d7b247161b57599c1 /include/git2/notes.h
parent05a3ab61c276472296cd9d52bfa7219e65356a9b (diff)
downloadlibgit2-de5596bfd683273d60e8865626a064c6c1ece321.tar.gz
API updates for notes.h/c.
Diffstat (limited to 'include/git2/notes.h')
-rw-r--r--include/git2/notes.h67
1 files changed, 41 insertions, 26 deletions
diff --git a/include/git2/notes.h b/include/git2/notes.h
index af480a408..765ee5ddd 100644
--- a/include/git2/notes.h
+++ b/include/git2/notes.h
@@ -19,20 +19,39 @@
GIT_BEGIN_DECL
/**
+ * Basic components of a note
+ *
+ * - Oid of the blob containing the message
+ * - Oid of the git object being annotated
+ */
+typedef struct {
+ git_oid blob_oid;
+ git_oid annotated_object_oid;
+} git_note_data;
+
+/**
+ * Callback for git_note_foreach.
+ */
+typedef int (*git_note_foreach_cb)(git_note_data *note_data, void *payload);
+
+/**
* Read the note for an object
*
* The note must be freed manually by the user.
*
- * @param note pointer to the read note; NULL in case of error
+ * @param out pointer to the read note; NULL in case of error
* @param repo repository where to look up the note
- * @param notes_ref canonical name of the reference to use (optional);
- * defaults to "refs/notes/commits"
+ * @param notes_ref canonical name of the reference to use (optional); defaults to
+ * "refs/notes/commits"
* @param oid OID of the git object to read the note from
*
* @return 0 or an error code
*/
-GIT_EXTERN(int) git_note_read(git_note **note, git_repository *repo,
- const char *notes_ref, const git_oid *oid);
+GIT_EXTERN(int) git_note_read(
+ git_note **out,
+ git_repository *repo,
+ const char *notes_ref,
+ const git_oid *oid);
/**
* Get the note message
@@ -40,7 +59,7 @@ GIT_EXTERN(int) git_note_read(git_note **note, git_repository *repo,
* @param note
* @return the note message
*/
-GIT_EXTERN(const char *) git_note_message(git_note *note);
+GIT_EXTERN(const char *) git_note_message(const git_note *note);
/**
@@ -49,7 +68,7 @@ GIT_EXTERN(const char *) git_note_message(git_note *note);
* @param note
* @return the note object OID
*/
-GIT_EXTERN(const git_oid *) git_note_oid(git_note *note);
+GIT_EXTERN(const git_oid *) git_note_oid(const git_note *note);
/**
* Add a note for an object
@@ -65,10 +84,14 @@ GIT_EXTERN(const git_oid *) git_note_oid(git_note *note);
*
* @return 0 or an error code
*/
-GIT_EXTERN(int) git_note_create(git_oid *out, git_repository *repo,
- git_signature *author, git_signature *committer,
- const char *notes_ref, const git_oid *oid,
- const char *note);
+GIT_EXTERN(int) git_note_create(
+ git_oid *out,
+ git_repository *repo,
+ const git_signature *author,
+ const git_signature *committer,
+ const char *notes_ref,
+ const git_oid *oid,
+ const char *note);
/**
@@ -83,9 +106,12 @@ GIT_EXTERN(int) git_note_create(git_oid *out, git_repository *repo,
*
* @return 0 or an error code
*/
-GIT_EXTERN(int) git_note_remove(git_repository *repo, const char *notes_ref,
- git_signature *author, git_signature *committer,
- const git_oid *oid);
+GIT_EXTERN(int) git_note_remove(
+ git_repository *repo,
+ const char *notes_ref,
+ const git_signature *author,
+ const git_signature *committer,
+ const git_oid *oid);
/**
* Free a git_note object
@@ -105,17 +131,6 @@ GIT_EXTERN(void) git_note_free(git_note *note);
GIT_EXTERN(int) git_note_default_ref(const char **out, git_repository *repo);
/**
- * Basic components of a note
- *
- * - Oid of the blob containing the message
- * - Oid of the git object being annotated
- */
-typedef struct {
- git_oid blob_oid;
- git_oid annotated_object_oid;
-} git_note_data;
-
-/**
* Loop over all the notes within a specified namespace
* and issue a callback for each one.
*
@@ -134,7 +149,7 @@ typedef struct {
GIT_EXTERN(int) git_note_foreach(
git_repository *repo,
const char *notes_ref,
- int (*note_cb)(git_note_data *note_data, void *payload),
+ git_note_foreach_cb note_cb,
void *payload
);