diff options
Diffstat (limited to 'reference.go')
| -rw-r--r-- | reference.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/reference.go b/reference.go index 7d28115..493663a 100644 --- a/reference.go +++ b/reference.go @@ -185,12 +185,16 @@ func (v *Reference) Free() { C.git_reference_free(v.ptr) } -type ReferenceIterator interface { - Next() (*Reference, error) +type NameIterator interface { NextName() (string, error) Free() } +type ReferenceIterator interface { + NameIterator + Next() (*Reference, error) +} + type gitReferenceIterator struct { ptr *C.git_reference_iterator } @@ -255,7 +259,7 @@ func (v *gitReferenceIterator) NextName() (string, error) { // Create a channel from the iterator. You can use range on the // returned channel to iterate over all the references names. The channel // will be closed in case any error is found. -func ReferenceNameIteratorChannel(v ReferenceIterator) <-chan string { +func NameIteratorChannel(v NameIterator) <-chan string { ch := make(chan string) go func() { defer close(ch) |
