Merge pull request #323 from Coderlane/diff_stats_string
Add DiffStats String
This commit is contained in:
commit
1670c49c7e
27
diff.go
27
diff.go
|
@ -217,6 +217,33 @@ func (stats *DiffStats) FilesChanged() int {
|
||||||
return int(C.git_diff_stats_files_changed(stats.ptr))
|
return int(C.git_diff_stats_files_changed(stats.ptr))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type DiffStatsFormat int
|
||||||
|
|
||||||
|
const (
|
||||||
|
DiffStatsNone DiffStatsFormat = C.GIT_DIFF_STATS_NONE
|
||||||
|
DiffStatsFull DiffStatsFormat = C.GIT_DIFF_STATS_FULL
|
||||||
|
DiffStatsShort DiffStatsFormat = C.GIT_DIFF_STATS_SHORT
|
||||||
|
DiffStatsNumber DiffStatsFormat = C.GIT_DIFF_STATS_NUMBER
|
||||||
|
DiffStatsIncludeSummary DiffStatsFormat = C.GIT_DIFF_STATS_INCLUDE_SUMMARY
|
||||||
|
)
|
||||||
|
|
||||||
|
func (stats *DiffStats) String(format DiffStatsFormat,
|
||||||
|
width uint) (string, error) {
|
||||||
|
buf := C.git_buf{}
|
||||||
|
defer C.git_buf_free(&buf)
|
||||||
|
|
||||||
|
runtime.LockOSThread()
|
||||||
|
defer runtime.UnlockOSThread()
|
||||||
|
|
||||||
|
ret := C.git_diff_stats_to_buf(&buf,
|
||||||
|
stats.ptr, C.git_diff_stats_format_t(format), C.size_t(width))
|
||||||
|
if ret < 0 {
|
||||||
|
return "", MakeGitError(ret)
|
||||||
|
}
|
||||||
|
|
||||||
|
return C.GoString(buf.ptr), nil
|
||||||
|
}
|
||||||
|
|
||||||
func (diff *Diff) Stats() (*DiffStats, error) {
|
func (diff *Diff) Stats() (*DiffStats, error) {
|
||||||
stats := new(DiffStats)
|
stats := new(DiffStats)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue