deckarep / golang-set

A simple, battle-tested and generic set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp.
Other
4k stars 272 forks source link

how range over set use Iterator()? #100

Closed Crisyix closed 2 years ago

Crisyix commented 2 years ago

i create a set with golang-set/v2 and try to range over it use Iterator() function,which source code tells me that

// Returns an Iterator object that you can
// use to range over the set.
Iterator() *Iterator[T] 

but i write this code and it doesn't work for me,

func TestSet(t *testing.T) { 
     vSet := set.NewSet[string]()
     vSet.Add("test1")`
     vSet.Add("test1")`
     for _, v := range vSet.Iterator() {
        `fmt.Println(v)
     }
    fmt.Println(vSet.Cardinality())
}

error occurs after run this test code :cannot range over vSet.Iterator() (value of type *mapset.Iterator[string])