Files
lo/docs/data/it-coalesceseqorempty.md
T
2025-10-06 17:16:33 +02:00

1.0 KiB

name, slug, sourceRef, category, subCategory, signatures, variantHelpers, similarHelpers, position
name slug sourceRef category subCategory signatures variantHelpers similarHelpers position
CoalesceSeqOrEmpty coalesceseqorempty it/type_manipulation.go#L76 it type
func CoalesceSeqOrEmpty[T any](v ...iter.Seq[T]) iter.Seq[T]
it#type#coalesceseqorempty
it#type#coalesceseq
core#type#coalesceorempty
core#type#coalescesliceorempty
102

Returns the first non-empty sequence from the provided arguments, or an empty sequence if all arguments are empty.

emptySeq := func(yield func(int) bool) bool {
    return false // empty sequence
}
nonEmptySeq := lo.Range(3)
result := lo.CoalesceSeqOrEmpty(emptySeq, nonEmptySeq, emptySeq)
// iter.Seq[int] yielding 0, 1, 2

emptyStrSeq := func(yield func(string) bool) bool {
    return false // empty sequence
}
strSeq := func(yield func(string) bool) bool {
    yield("a")
    yield("b")
    return true
}
result = lo.CoalesceSeqOrEmpty(emptyStrSeq, strSeq)
// iter.Seq[string] yielding "a", "b"

result = lo.CoalesceSeqOrEmpty(emptySeq, emptyStrSeq)
// empty sequence (yields nothing)