From 53b5ecacbef4a149681734b32f7af3a42db66397 Mon Sep 17 00:00:00 2001 From: lye Date: Thu, 20 Feb 2014 00:24:11 -0600 Subject: [PATCH] Add Is$Type methods to Reference. This patch adds the following methods to Reference: IsBranch() bool IsRemote() bool IsTag() bool which correspond to the `git_reference_is_$type` functions in libgit2. --- reference.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/reference.go b/reference.go index 8e33354..24b5835 100644 --- a/reference.go +++ b/reference.go @@ -122,6 +122,18 @@ func (v *Reference) Type() ReferenceType { return ReferenceType(C.git_reference_type(v.ptr)) } +func (v *Reference) IsBranch() bool { + return C.git_reference_is_branch(v.ptr) == 1 +} + +func (v *Reference) IsRemote() bool { + return C.git_reference_is_remote(v.ptr) == 1 +} + +func (v *Reference) IsTag() bool { + return C.git_reference_is_tag(v.ptr) == 1 +} + func (v *Reference) Free() { runtime.SetFinalizer(v, nil) C.git_reference_free(v.ptr)