private int LineCallback(GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, UIntPtr contentlen, IntPtr payload) { string decodedContent = Utf8Marshaler.FromNative(content, (int)contentlen); string prefix; switch (lineorigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: LinesAdded++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: LinesDeleted++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_CONTEXT: prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; default: prefix = string.Empty; break; } AppendToPatch(prefix); AppendToPatch(decodedContent); return(0); }
private int LineCallback(GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, UIntPtr contentlen, IntPtr payload) { string decodedContent = Utf8Marshaler.FromNative(content, (int)contentlen); string prefix; switch (lineorigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: LinesAdded++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: LinesDeleted++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_CONTEXT: prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; default: prefix = string.Empty; break; } AppendToPatch(prefix); AppendToPatch(decodedContent); return 0; }
private TreeEntryChanges AddFileChange(GitDiffDelta delta, GitDiffLineOrigin lineorigin) { var newFilePath = FilePathMarshaler.FromNative(delta.NewFile.Path); if (lineorigin != GitDiffLineOrigin.GIT_DIFF_LINE_FILE_HDR) { return(this[newFilePath]); } var oldFilePath = FilePathMarshaler.FromNative(delta.OldFile.Path); var newMode = (Mode)delta.NewFile.Mode; var oldMode = (Mode)delta.OldFile.Mode; var newOid = delta.NewFile.Oid; var oldOid = delta.OldFile.Oid; if (delta.Status == ChangeKind.Untracked) { delta.Status = ChangeKind.Added; } var diffFile = new TreeEntryChanges(newFilePath, newMode, newOid, delta.Status, oldFilePath, oldMode, oldOid, delta.IsBinary()); fileDispatcher[delta.Status](this, diffFile); changes.Add(newFilePath, diffFile); return(diffFile); }
private int DataCallback(GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineOrigin, IntPtr content, UIntPtr contentLen, IntPtr payload) { var filePath = FilePathMarshaler.FromNative(delta.NewFile.Path); AddLineChange(this[filePath], lineOrigin); return(0); }
private int PrintCallBack(GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, UIntPtr contentlen, IntPtr payload) { string formattedoutput = Utf8Marshaler.FromNative(content, (int)contentlen); var filePath = FilePathMarshaler.FromNative(delta.NewFile.Path); fullPatchBuilder.Append(formattedoutput); this[filePath].AppendToPatch(formattedoutput); return(0); }
private int PrintCallBack(GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, UIntPtr contentlen, IntPtr payload) { string formattedoutput = Utf8Marshaler.FromNative(content, (int)contentlen); TreeEntryChanges currentChange = AddFileChange(delta, lineorigin); AddLineChange(currentChange, lineorigin); currentChange.AppendToPatch(formattedoutput); fullPatchBuilder.Append(formattedoutput); return(0); }
private void AddLineChange(string currentFilePath, GitDiffLineOrigin lineOrigin) { switch (lineOrigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: IncrementLinesAdded(currentFilePath); break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: IncrementLinesDeleted(currentFilePath); break; } }
private void AddLineChange(Changes currentChange, GitDiffLineOrigin lineOrigin) { switch (lineOrigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: linesAdded++; currentChange.LinesAdded++; break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: linesDeleted++; currentChange.LinesDeleted++; break; } }
private int LineCallback(IntPtr data, GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, IntPtr contentlen) { string decodedContent = NativeToString(content, contentlen); string prefix; switch (lineorigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: LinesAdded++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: LinesDeleted++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_CONTEXT: prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; default: prefix = string.Empty; break; } PatchBuilder.AppendFormat("{0}{1}", prefix, decodedContent); return 0; }
private int LineCallback(IntPtr data, GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, uint contentlen) { string decodedContent = marshaler.NativeToString(content, contentlen); string prefix; switch (lineorigin) { case GitDiffLineOrigin.GIT_DIFF_LINE_ADDITION: LinesAdded++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_DELETION: LinesDeleted++; prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; case GitDiffLineOrigin.GIT_DIFF_LINE_CONTEXT: prefix = Encoding.ASCII.GetString(new[] { (byte)lineorigin }); break; default: prefix = string.Empty; break; } PatchBuilder.AppendFormat("{0}{1}", prefix, decodedContent); return(0); }
private int PrintCallBack(IntPtr data, GitDiffDelta delta, GitDiffRange range, GitDiffLineOrigin lineorigin, IntPtr content, uint contentlen) { string formattedoutput = marshaler.NativeToString(content, contentlen); var currentFilePath = (string)marshaler.MarshalNativeToManaged(delta.NewFile.Path); AddLineChange(currentFilePath, lineorigin); if (lineorigin == GitDiffLineOrigin.GIT_DIFF_LINE_FILE_HDR) { AddFileChange(delta); } changes[currentFilePath].PatchBuilder.Append(formattedoutput); fullPatchBuilder.Append(formattedoutput); return(0); }