[–] suzuki 12y ago ↗ Example:package mainimport ( "fmt"; . "linq" )var Fibonacci Enumerate = func(yield Operate) error { a := 0; b := 1; for { err := yield(a); if err != nil { return err }; a, b = b, a+b } }func main() { twentyFibs := Fibonacci.Take(20); twentyFibs(func(e Any) error { fmt.Printf(" %v", e); return nil }); fmt.Println() }Output: 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181
1 comment
[ 3.2 ms ] story [ 10.4 ms ] threadpackage main
import ( "fmt"; . "linq" )
var Fibonacci Enumerate = func(yield Operate) error { a := 0; b := 1; for { err := yield(a); if err != nil { return err }; a, b = b, a+b } }
func main() { twentyFibs := Fibonacci.Take(20); twentyFibs(func(e Any) error { fmt.Printf(" %v", e); return nil }); fmt.Println() }
Output: 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181