public unsafe ObjectDatabase() { git_odb *nativeOdb; Ensure.NativeSuccess(libgit2.git_odb_new(out nativeOdb)); this.nativeOdb = nativeOdb; }
internal unsafe override void Dispose(bool disposing) { if (nativeOdb != null) { libgit2.git_odb_free(nativeOdb); nativeOdb = null; } }
internal ObjectDatabaseHandle(git_odb *ptr, bool owned) : base((void *)ptr, owned) { }
internal unsafe static ObjectDatabase FromNative(git_odb *nativeOdb) { return(new ObjectDatabase(nativeOdb)); }
private unsafe ObjectDatabase(git_odb *nativeOdb) { Ensure.ArgumentNotNull(nativeOdb, "odb"); this.nativeOdb = nativeOdb; }
public static extern unsafe int git_repository_odb(out git_odb *odb, git_repository *repo);
public static extern unsafe void git_repository_set_odb(git_repository *repo, git_odb *odb);
public static extern unsafe int git_odb_read_header(out UIntPtr len_out, out git_object_t type, git_odb *odb, ref git_oid id);
public static extern unsafe int git_odb_write(ref git_oid id, git_odb *odb, byte *data, UIntPtr len, git_object_t type);
public static extern unsafe int git_odb_read(out git_odb_object *obj, git_odb *odb, ref git_oid id);
public static extern unsafe int git_odb_new(out git_odb *odb);
public static extern unsafe void git_odb_free(git_odb *odb);
public static extern unsafe int git_odb_foreach(git_odb *odb, git_odb_foreach_cb cb, IntPtr payload);
public static extern unsafe int git_odb_add_backend( git_odb *odb, git_odb_backend *backend, int priority);