func()

in ccadb2OneCRL/set/set.go [164:182]


func (s *SetImpl) Iter() <-chan Record {
	// We have two backing maps that can both
	// hold a pointer to the same record, so
	// we need to "flatten" that view by
	// ensuring uniqueness via said pointer.
	m := make(map[uintptr]Record)
	for _, v := range s.subjectKeyHash {
		m[reflect.ValueOf(v).Pointer()] = v
	}
	for _, v := range s.issuerSerial {
		m[reflect.ValueOf(v).Pointer()] = v
	}
	ret := make(chan Record, len(m))
	defer close(ret)
	for _, v := range m {
		ret <- v
	}
	return ret
}