github.com/m4gshm/gollections@v0.0.10/op/delay/sum/api.go (about) 1 // Package sum provides sum.Of alias 2 package sum 3 4 import ( 5 "github.com/m4gshm/gollections/c" 6 "github.com/m4gshm/gollections/loop" 7 "github.com/m4gshm/gollections/slice/iter" 8 "github.com/m4gshm/gollections/slice/sum" 9 ) 10 11 // Of returns a sum builder function 12 func Of[T c.Summable](elements ...T) func() T { 13 return func() T { return sum.Of(elements) } 14 } 15 16 // Over returns a sum builder function 17 func Over[T c.Summable](getters ...func() T) func() T { 18 return func() T { return loop.Sum(iter.Convert(getters, func(e func() T) T { return e() }).Next) } 19 }