diff options
Diffstat (limited to 'LibGit2Sharp/Core/NativeMethods.cs')
-rw-r--r-- | LibGit2Sharp/Core/NativeMethods.cs | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/LibGit2Sharp/Core/NativeMethods.cs b/LibGit2Sharp/Core/NativeMethods.cs index 6b1accb2..9b2f9215 100644 --- a/LibGit2Sharp/Core/NativeMethods.cs +++ b/LibGit2Sharp/Core/NativeMethods.cs @@ -577,6 +577,55 @@ namespace LibGit2Sharp.Core GitObjectSafeHandle two); [DllImport(libgit2)] + internal static extern int git_merge_head_from_ref( + out GitMergeHeadHandle mergehead, + RepositorySafeHandle repo, + ReferenceSafeHandle reference); + + [DllImport(libgit2)] + internal static extern int git_merge_head_from_fetchhead( + out GitMergeHeadHandle mergehead, + RepositorySafeHandle repo, + [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(StrictUtf8Marshaler))] string branch_name, + [MarshalAs(UnmanagedType.CustomMarshaler, MarshalCookie = UniqueId.UniqueIdentifier, MarshalTypeRef = typeof(StrictUtf8Marshaler))] string remote_url, + ref GitOid oid); + + [DllImport(libgit2)] + internal static extern int git_merge_head_from_oid( + out GitMergeHeadHandle mergehead, + RepositorySafeHandle repo, + ref GitOid oid); + + [DllImport(libgit2)] + internal static extern int git_merge( + out GitMergeResultHandle mergeResult, + RepositorySafeHandle repo, + [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 2)] [In] IntPtr[] their_heads, + UIntPtr their_heads_len, + ref GitMergeOpts given_opts); + + [DllImport(libgit2)] + internal static extern int git_merge_result_is_uptodate( + GitMergeResultHandle merge_result); + + [DllImport(libgit2)] + internal static extern int git_merge_result_is_fastforward( + GitMergeResultHandle merge_result); + + [DllImport(libgit2)] + internal static extern int git_merge_result_fastforward_oid( + out GitOid oid, + GitMergeResultHandle merge_result); + + [DllImport(libgit2)] + internal static extern void git_merge_result_free( + IntPtr merge_result); + + [DllImport(libgit2)] + internal static extern void git_merge_head_free( + IntPtr merge_head); + + [DllImport(libgit2)] internal static extern int git_message_prettify( byte[] message_out, // NB: This is more properly a StringBuilder, but it's UTF8 UIntPtr buffer_size, |