lnd/fn/send.go

14 lines
331 B
Go
Raw Normal View History

2024-01-03 02:18:29 +01:00
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
}
}