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