Reference: adjust to iterator changes
The Library's iterators now can return either the reference or the reference's name. As the name is what we're set up for, rename the functions appropriately so we compile against altest development.
This commit is contained in:
parent
a33875f9c5
commit
f5fc7e5f78
12
reference.go
12
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()
|
||||
}
|
||||
}()
|
||||
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue