diff --git a/reference.go b/reference.go index 93ab7de..5aee276 100644 --- a/reference.go +++ b/reference.go @@ -149,9 +149,9 @@ func (repo *Repository) NewReferenceIteratorGlob(glob string) (*ReferenceIterato // Next retrieves the next reference name. If the iteration is over, // the returned error is git.ErrIterOver -func (v *ReferenceIterator) Next() (string, error) { +func (v *ReferenceIterator) NextName() (string, error) { var ptr *C.char - ret := C.git_reference_next(&ptr, v.ptr) + ret := C.git_reference_next_name(&ptr, v.ptr) if ret == ITEROVER { return "", ErrIterOver } @@ -163,16 +163,16 @@ func (v *ReferenceIterator) Next() (string, error) { } // Create a channel from the iterator. You can use range on the -// returned channel to iterate over all the references. The channel +// returned channel to iterate over all the references names. The channel // will be closed in case any error is found. -func (v *ReferenceIterator) Iter() <-chan string { +func (v *ReferenceIterator) NameIter() <-chan string { ch := make(chan string) go func() { defer close(ch) - name, err := v.Next() + name, err := v.NextName() for err == nil { ch <- name - name, err = v.Next() + name, err = v.NextName() } }() diff --git a/reference_test.go b/reference_test.go index 6ac4ece..77afaeb 100644 --- a/reference_test.go +++ b/reference_test.go @@ -5,6 +5,7 @@ import ( "runtime" "sort" "testing" + "time" ) func TestRefModification(t *testing.T) { @@ -98,10 +99,10 @@ func TestIterator(t *testing.T) { } // test some manual iteration - name, err := iter.Next() + name, err := iter.NextName() for err == nil { list = append(list, name) - name, err = iter.Next() + name, err = iter.NextName() } if err != ErrIterOver { t.Fatal("Iteration not over") @@ -114,7 +115,7 @@ func TestIterator(t *testing.T) { // test the channel iteration list = []string{} iter, err = repo.NewReferenceIterator() - for name := range iter.Iter() { + for name := range iter.NameIter() { list = append(list, name) } @@ -128,7 +129,7 @@ func TestIterator(t *testing.T) { } list = []string{} - for name := range iter.Iter() { + for name := range iter.NameIter() { list = append(list, name) }