memberset.gno

0.75 Kb ยท 29 lines
 1package commondao
 2
 3import "std"
 4
 5// NewMemberSet creates a new readonly memberset.
 6func NewMemberSet(s MemberStorage) MemberSet {
 7	return MemberSet{s}
 8}
 9
10// MemberSet contains a readonly list of member addresses.
11type MemberSet struct {
12	storage MemberStorage
13}
14
15// Size returns the number of addresses in the set.
16func (s MemberSet) Size() int {
17	return s.storage.Size()
18}
19
20// Has checks if an address exists in the set.
21func (s MemberSet) Has(member std.Address) bool {
22	return s.storage.Has(member)
23}
24
25// IterateByOffset walks through addresses starting at the given offset.
26// The callback should return true to stop iteration.
27func (s MemberSet) IterateByOffset(offset, count int, fn func(std.Address) bool) {
28	s.storage.IterateByOffset(offset, count, fn)
29}