lnd/fn/send.go
Olaoluwa Osuntokun eb72bb9712
fn: add SendOrQuit
2024-01-23 19:09:50 -08:00

14 lines
331 B
Go

package fn
// SendOrQuit attempts to and a message through channel c. If this succeeds,
// then bool is returned. Otherwise if a quit signal is received first, then
// false is returned.
func SendOrQuit[T any, Q any](c chan<- T, msg T, quit chan Q) bool {
select {
case c <- msg:
return true
case <-quit:
return false
}
}