You need to cast the result to a seq<int>
:
[2; 3; 4].SelectMany(fun n -> iota n :> int seq)
alternatively you could use List.collect
:
[2; 3; 4] |> List.collect iota
Вопрос
Given this:
open System.Linq
let iota n = [0..(n-1)]
the following produces an error:
[2; 3; 4].SelectMany(fun n -> iota n)
Is there a way to pass function values to SelectMany
?
Решение
You need to cast the result to a seq<int>
:
[2; 3; 4].SelectMany(fun n -> iota n :> int seq)
alternatively you could use List.collect
:
[2; 3; 4] |> List.collect iota