Commit ce2167fe authored by Jeromy's avatar Jeromy

some improvements from integrating into go-ipfs

parents
package cid
type Set struct {
set map[string]struct{}
}
func NewSet() *Set {
return &Set{set: make(map[string]struct{})}
}
func (s *Set) Add(c *Cid) {
s.set[string(c.Bytes())] = struct{}{}
}
func (s *Set) Has(c *Cid) bool {
_, ok := s.set[string(c.Bytes())]
return ok
}
func (s *Set) Remove(c *Cid) {
delete(s.set, string(c.Bytes()))
}
func (s *Set) Len() int {
return len(s.set)
}
func (s *Set) Keys() []*Cid {
var out []*Cid
for k, _ := range s.set {
c, _ := Cast([]byte(k))
out = append(out, c)
}
return out
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment