1 module deimos.git2.common;
2 
3 import deimos.git2.util;
4 
5 extern (C):
6 
7 version(Windows)
8     enum GIT_PATH_LIST_SEPARATOR = ';';
9 else
10     enum GIT_PATH_LIST_SEPARATOR = ':';
11 
12 version(Windows)
13     enum GIT_WIN32 = 1;
14 else
15     enum GIT_WIN32 = 0;
16 
17 enum GIT_PATH_MAX = 4096;
18 
19 enum GIT_OID_HEX_ZERO = "0000000000000000000000000000000000000000";
20 
21 void git_libgit2_version(int *major, int *minor, int *rev);
22 
23 enum git_feature_t
24 {
25 	GIT_FEATURE_THREADS			= ( 1 << 0 ),
26 	GIT_FEATURE_HTTPS			= ( 1 << 1 ),
27 	GIT_FEATURE_SSH				= ( 1 << 2 ),
28 	GIT_FEATURE_NSEC			= ( 1 << 3)
29 }
30 mixin _ExportEnumMembers!git_feature_t;
31 
32 int git_libgit2_features();
33 
34 enum git_libgit2_opt_t
35 {
36 	GIT_OPT_GET_MWINDOW_SIZE,
37 	GIT_OPT_SET_MWINDOW_SIZE,
38 	GIT_OPT_GET_MWINDOW_MAPPED_LIMIT,
39 	GIT_OPT_SET_MWINDOW_MAPPED_LIMIT,
40 	GIT_OPT_GET_SEARCH_PATH,
41 	GIT_OPT_SET_SEARCH_PATH,
42 	GIT_OPT_SET_CACHE_OBJECT_LIMIT,
43 	GIT_OPT_SET_CACHE_MAX_SIZE,
44 	GIT_OPT_ENABLE_CACHING,
45 	GIT_OPT_GET_CACHED_MEMORY,
46 	GIT_OPT_GET_TEMPLATE_PATH,
47 	GIT_OPT_SET_TEMPLATE_PATH,
48 	GIT_OPT_SET_SSL_CERT_LOCATIONS,
49 	GIT_OPT_SET_USER_AGENT,
50 	GIT_OPT_ENABLE_STRICT_OBJECT_CREATION,
51 	GIT_OPT_SET_SSL_CIPHERS,
52 	GIT_OPT_GET_USER_AGENT,
53 }
54 mixin _ExportEnumMembers!git_libgit2_opt_t;
55 
56 int git_libgit2_opts(int option, ...);