Commit 0f1f9833cf13ac8714ec21fcf29d895ff8cbfe24

Russell Belfer 2013-05-24T10:32:07

Add typedefs on some public enums Apparently this makes things easier to bind in some languages.

diff --git a/include/git2/common.h b/include/git2/common.h
index f9e9929..1b0e0cb 100644
--- a/include/git2/common.h
+++ b/include/git2/common.h
@@ -103,10 +103,10 @@ GIT_EXTERN(void) git_libgit2_version(int *major, int *minor, int *rev);
 /**
  * Combinations of these values describe the capabilities of libgit2.
  */
-enum {
+typedef enum {
 	GIT_CAP_THREADS			= ( 1 << 0 ),
 	GIT_CAP_HTTPS			= ( 1 << 1 )
-};
+} git_cap_t;
 
 /**
  * Query compile time options for libgit2.
@@ -114,12 +114,13 @@ enum {
  * @return A combination of GIT_CAP_* values.
  *
  * - GIT_CAP_THREADS
- *   Libgit2 was compiled with thread support. Note that thread support is still to be seen as a
- *   'work in progress'.
+ *   Libgit2 was compiled with thread support. Note that thread support is
+ *   still to be seen as a 'work in progress' - basic object lookups are
+ *   believed to be threadsafe, but other operations may not be.
  *
  * - GIT_CAP_HTTPS
- *   Libgit2 supports the https:// protocol. This requires the open ssl library to be
- *   found when compiling libgit2.
+ *   Libgit2 supports the https:// protocol. This requires the openssl
+ *   library to be found when compiling libgit2.
  */
 GIT_EXTERN(int) git_libgit2_capabilities(void);
 
diff --git a/include/git2/errors.h b/include/git2/errors.h
index 917f069..caf9e62 100644
--- a/include/git2/errors.h
+++ b/include/git2/errors.h
@@ -18,7 +18,7 @@
 GIT_BEGIN_DECL
 
 /** Generic return codes */
-enum {
+typedef enum {
 	GIT_OK = 0,
 	GIT_ERROR = -1,
 	GIT_ENOTFOUND = -3,
@@ -35,7 +35,7 @@ enum {
 
 	GIT_PASSTHROUGH = -30,
 	GIT_ITEROVER = -31,
-};
+} git_error_code;
 
 typedef struct {
 	char *message;
diff --git a/include/git2/odb_backend.h b/include/git2/odb_backend.h
index 4c2493a..af1e3e5 100644
--- a/include/git2/odb_backend.h
+++ b/include/git2/odb_backend.h
@@ -59,11 +59,11 @@ GIT_EXTERN(int) git_odb_backend_loose(git_odb_backend **out, const char *objects
 GIT_EXTERN(int) git_odb_backend_one_pack(git_odb_backend **out, const char *index_file);
 
 /** Streaming mode */
-enum {
+typedef enum {
 	GIT_STREAM_RDONLY = (1 << 1),
 	GIT_STREAM_WRONLY = (1 << 2),
 	GIT_STREAM_RW = (GIT_STREAM_RDONLY | GIT_STREAM_WRONLY),
-};
+} git_odb_stream_t;
 
 /** A stream to read/write from a backend */
 struct git_odb_stream {