seq — 从左到右读懂数据流
基于标准库 iter.Seq / iter.Seq2 构建的惰性、可链式集合管道,借助 Go 1.27 的泛型方法(golang/go#77273)实现可改变元素类型的链式调用。
Seq[T] 是 iter.Seq[T] 的 defined type,零成本互转,可直接喂给 slices.Collect、maps.Keys。零第三方依赖。
Go 1.27零依赖
惰性求值120+ 操作
import "github.com/smallnest/seq" seq.From([]int{1, 2, 3, 4}). Filter(func(n int) bool { return n%2 == 0 }). Map(strconv.Itoa). Collect() // ["2" "4"]
由 seq 源码 doc 生成 · 设计遵循"划分铁律":受约束的操作(comparable/Ordered/Numeric)为自由函数或子类型方法,而非 Seq[T] 方法。