module deimos.git2.oid; import deimos.git2.common; import deimos.git2.types; extern (C): enum GIT_OID_RAWSZ = 20; enum GIT_OID_HEXSZ = (GIT_OID_RAWSZ * 2); enum GIT_OID_MINPREFIXLEN = 4; struct git_oid { ubyte[GIT_OID_RAWSZ] id; } int git_oid_fromstr(git_oid *out_, const(char)* str); int git_oid_fromstrp(git_oid *out_, const(char)* str); int git_oid_fromstrn(git_oid *out_, const(char)* str, size_t length); void git_oid_fromraw(git_oid *out_, const(ubyte)* raw); void git_oid_fmt(char *out_, const(git_oid)* id); void git_oid_nfmt(char *out_, size_t n, const(git_oid)* id); void git_oid_pathfmt(char *out_, const(git_oid)* id); char* git_oid_allocfmt(const(git_oid)* id); char * git_oid_tostr(char *out_, size_t n, const(git_oid)* id); void git_oid_cpy(git_oid *out_, const(git_oid)* src); int git_oid_cmp(const(git_oid)* a, const(git_oid)* b); int git_oid_equal(const(git_oid)* a, const(git_oid)* b) { return !git_oid_cmp(a, b); } int git_oid_ncmp(const(git_oid)* a, const(git_oid)* b, size_t len); int git_oid_streq(const(git_oid)* id, const(char)* str); int git_oid_strcmp(const(git_oid)* id, const(char)* str); int git_oid_iszero(const(git_oid)* id); struct git_oid_shorten { @disable this(); @disable this(this); } git_oid_shorten * git_oid_shorten_new(size_t min_length); int git_oid_shorten_add(git_oid_shorten *os, const(char)* text_id); void git_oid_shorten_free(git_oid_shorten *os);