set/set.go
func (s *Set) ContainsFunc(f func(interface{}) bool) bool {
	s.RLock()
	defer s.RUnlock()
	for k := range s.m {
		if f(k) {
			return true
		}
	}
	return false
}
func (s *Set) ContainsFunc(f func(interface{}) bool) bool {
	s.RLock()
	defer s.RUnlock()
	for k := range s.m {
		if f(k) {
			return true
		}
	}
	return false
}
// ContainsFunc iterates all the items in the set and passes
// each to f. It returns true the first time a call to f returns
// true and false if no call to f returns true.